我有一個奇怪地填充的選擇表單。我想知道我是否可以得到解釋。表單選擇以奇怪的方式填充
模式:
我有有一個多對多的一個模式叫對話用戶模型。對話依次has_many消息和消息屬於對話。除此之外,用戶和消息沒有鏈接。
的消息控制器
我調試一個小型的郵件系統,所以我決定將所有用戶(我知道,我知道)傳遞給我的看法,這樣我可以在一個下拉列表中顯示它們和測試發送消息給他們。基本上只是
def new
@message = Message.new
@users = User.all
end
對於一些奇怪的原因,我必須有belongs_to :user
在我的消息類或我的錯誤undefined method "user" for #<Message:0x0000000581b898>
查看
在我的表單中我基本上
<%= form_for(@message) do |f| %>
<div class="form-group">
<%= f.select :user, collection: @users.all.map { |user| [user.id, user.name] }%>
</div>
Other nonsense
<% end %>
問題
因此,當生成一條新消息時,爲什麼我的下拉列表正在填充,正如它試圖訪問Message.User.id
而不是僅僅是User.id,如果我正在給@users= User.all
正確的數據?
感謝