simpleform が私の関連付けを受け入れないのはなぜですか?
私はレールに比較的慣れていないので、これが初心者の間違いである場合はご容赦ください。そのため、愚かなことをしていないことを確認するために、多すぎる情報を含める可能性があります.
審査員が審査したいさまざまな焦点を選択できるシンプルなフォームを作成しようとしています。
次のエラー メッセージが表示されます。
NameError in Devise/registrations#new
Showing /Users/wattsb/ruby/rails_projects/social_pitch/app/views/devise/registrations/new.html.erb where line #9 raised:
uninitialized constant Judge::Focu
Extracted source (around line #9):
6: <%= f.input :email %>
7: <%= f.input :password %>
8: <%= f.input :password_confirmation %>
9: <%= f.association :focus, as: :check_boxes %>
10: <div class="form-actions">
11: <%= f.submit "Sign up", class: "btn btn-primary" %>
12: </div>
エラーは次のビューを参照しています
<h2>Sign up</h2>
<%= simple_form_for(resource, :as => resource_name, :url => registration_path(resource_name), html: { class: 'form-horizontal'}) do |f| %>
<%= f.error_notification %>
<%= f.input :email %>
<%= f.input :password %>
<%= f.input :password_confirmation %>
<%= f.association :focus, as: :check_boxes %>
<div class="form-actions">
<%= f.submit "Sign up", class: "btn btn-primary" %>
</div>
<% end %>
<%= render "devise/shared/links" %>
フォームは次のモデルを参照しています。
class Judge < ActiveRecord::Base
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :trackable, :validatable
has_many :focus
attr_accessible :email, :password, :password_confirmation, :remember_me, :name
end
class Focus < ActiveRecord::Base
attr_accessible :title
belongs_to :judge
end
これらのモデルについて、次の移行を行いました。
class DeviseCreateJudges < ActiveRecord::Migration
def change
create_table(:judges) do |t|
t.string :email, :null => false, :default => ""
t.string :encrypted_password, :null => false, :default => ""
t.string :reset_password_token
t.datetime :reset_password_sent_at
t.datetime :remember_created_at
t.integer :sign_in_count, :default => 0
t.datetime :current_sign_in_at
t.datetime :last_sign_in_at
t.string :current_sign_in_ip
t.string :last_sign_in_ip
t.timestamps
end
add_index :judges, :email, :unique => true
add_index :judges, :reset_password_token, :unique => true
end
end
class AddNameToJudges < ActiveRecord::Migration
def change
add_column :judges, :name, :string
end
end
class CreateFocus < ActiveRecord::Migration
def change
create_table :focus do |t|
t.string :title
t.timestamps
end
end
end
class AddAssociationsBetweenJudgesAndFocuses < ActiveRecord::Migration
def up
change_table :focus do |t|
t.belongs_to :judge
end
end
end