Location と User の 2 つのモデルがあります。場所has_many :users
とユーザーbelongs_to :location
。今、私は次のようなものを使用するフォームを持っています:
<%= form_for @user do |f| %>
...
<%= f.select(:location,:location_id,Location.all.collect{|location| location.name}) %>
...
<%end%>
調べてみると、正しいフォーム フィールドが生成されているように見えます。
<select id="user_location_id" name="user[location_id]">
<option value="Clearfield">Clearfield</option>
<option value="San Diego">San Diego</option>
</select>
Ruby on Railsによると: validates_presence_of validates_presence_of に関する質問は、モデル名と私のモデルで機能するはずです:
ユーザー.rb:
class User < ActiveRecord::Base
belongs_to :location
validates_presence_of :location
...
Location.rb:
class Location < ActiveRecord::Base
has_many :users
...
validates_presence_of
を使用すると場所が表示されなくなりますが、使用するvalidates_presence_of :location
と何らかの理由で機能しますlocation_id
か?