我在Ruby on Rails 4
中遇到了強參數問題。我有3個型號Entity
,user
,user_entity
。Has_many:通過Rails 4實例變量不起作用
User_entity
連在一起entity
和user
與has_many :through
關聯。
這是完美的代碼!
/views/user_entity/show.html.erb
<p>
<strong>User:</strong>
<%= @user_entity.user_id %>
</p>
在這裏,當我修改它不是!
<p>
<strong>User:</strong>
<%= @user_entity.user.name %>
</p>
錯誤我得到的是這樣的:
未定義的方法'用戶」的#提取 源(大約線#433):
否則 匹配= match_attribute_method(method.to_s) 比賽 ? attribute_missing(匹配,* ARGS,&塊):超級 結束 結束
我認爲這是因爲strong params
不是讓我從user
控制器訪問數據,但我不知道如何到白名單該數據user_entity
模型。
請幫忙。
/models/entity.rb
class Entity < ActiveRecord::Base
accepts_nested_attributes_for :user_entities
has_many :user_entities
has_many :users, :through => :user_entities
end
/models/user.rb
class User < ActiveRecord::Base
accepts_nested_attributes_for :user_entities
has_many :user_entities
has_many :entities, :through => :user_entities
end
/models/user_entity.rb
class User_entity < ActiveRecord::Base
belongs_to :entities
belongs_to :users
end
你可以添加你的User,UserEntity和Entity模型到你的問題嗎? –
+你如何定義@user_entity?你上面有一個錯字「eser_entity」,我想這只是在這裏,而不是在你的實際代碼中? – Nycen
錯誤類型:'@ eser_entity'而不是'@ user_entity' – zishe