我想要實現的是列出每個成員與學校,然後列出所有所有成員的學校。學校可以有很多成員,成員也可以有很多學校。我在系統中設置了以下設置,但在找到解決方案時遇到問題。這是我的代碼看起來像:問題和錯誤消息:找不到學校'id'=
控制器:
class MembersController < ActionController::Base
before_action :set_school
def index
@members = Member.all
end
def new
@member = Member.new
end
def create
@member = Member.new(member_params)
@member.school = @school
@member.save
redirect_to members_path
end
private
def set_school
@school = School.find(params[:school])
end
def member_params
params.require(:member).permit(:name, :email,:school)
end
end
這是我的路線:
Rails.application.routes.draw do
get 'schools/index'
resources :members
resources :school
end
我的看法是這樣的:
<% @members.each do |member| %>
<%= member.name %>
<%= member.email %>
<%= member.school %>
<% end %>
模型成員:
class CreateMembers < ActiveRecord::Migration[5.0]
def change
create_table :members do |t|
t.string :name
t.string :email
t.timestamps
end
end
我校示範:
class CreateSchools < ActiveRecord::Migration[5.0]
def change
create_table :schools do |t|
t.string :name
t.timestamps
end
和參考:
class AddSchoolRefToMembers < ActiveRecord::Migration[5.0]
def change
add_reference :members, :school, foreign_key: true
end
任何幫助將是巨大的!謝謝!
網址應該如何適合您的新操作?它是'example.com/members/new?school = someid'或只是'example.com/members/new'? – niceman
example.com/members/new – gerazoli
@ashvin'資源:成員'確實允許查詢參數:) – niceman