wiki#edit
ページで共同編集者を作成しました。HMABMの関係Railsのチェックボックスを経由して
私はcollaborators
ために結合テーブルを作成するために、私のschema.rb
でこれを持っている:
create_table "collaborators", force: :cascade do |t|
t.integer "user_id"
t.integer "wiki_id"
end
それでも私は両方user
とwiki
IDのインデックスを追加しました私の最初の移行に:
class CreateCollaborators < ActiveRecord::Migration
def change
create_table :collaborators do |t|
t.integer :user_id, array: true, default: []
t.integer :wiki_id
end
add_index :users, :id, unique: true
add_index :wikis, :id, unique: true
end
end
私はwikis#edit
ページのこのerbを使用して、潜在的な共同編集者のリストを作成しようとします(ゆるやかにthis Railcastに従います):
<% if @wiki.private? %>
<%= f.label :collaborators, class: 'checkbox' %>
<%= @users.each do |user| %>
<%= check_box_tag "wiki[user_ids][]", user.id, @wiki.collaborators.include?(user.id) %>
<%= user.name %><br>
<% end %>
<% end %>
は、今私は、uninitialized constant WikisController::Collaborator
言って私のwikis_controller
に示された行にエラーを取得しています:
class WikisController < ApplicationController
def edit
@wiki = Wiki.find(params[:id])
@users = User.all
collaborators = Collaborator.all <<<<<<<ERROR CALLED ON THIS LINE
end
私は空白のcollaborators_controller
作成しているが、コードとすべてがwikis#edit
ページで行われ、I何を入れるべきか分からない。
誰でも私の手伝いをすることはできますか?私は間違った方法でそれに近づいているかもしれません...
'app/models/collaborator.rb'ファイルがありますか? – Undo
いいえ、私は 'users'と' wiki 'に対して 'has_many'という関係を実装しようとしましたが、奇妙な構文エラーが続いていました。 – Liz