2008-03-17

Rails表单

关键字: rails表单
User为和Address类是一个一对多的关系:
User.rb
class User < ActiveRecord::Base
  validates_presence_of :name, :password  
  has_many :addresses
end

Address.rb:
class Address < ActiveRecord::Base
  belongs_to :user
end

在创建Address的时候,指定某一个User,下面是两种Form的实现:
1.
<%= form_tag :action => "create" %>
<p>
  <%= text_field "address", "street" %>
</p>
<p>
  <%= text_field "address", "country" %>
</p>
<p>
    <%= select_tag "address[user_id]", options_for_select(User.find(:all).collect {|u| [ u.name, u.id ] } )%>
</p>
<%= submit_tag 'SAVE' %>
</form>


2.这个是直接使用Scaffold生成的Form,然后添加select:
<% form_for(@address) do |f| %>
  <p>
    <b>Street</b><br />
    <%= f.text_field :street %>
  </p>

  <p>
    <b>Country</b><br />
    <%= f.text_field :country %>
  </p>

  <p>
    <%= f.select( "user_id", User.find(:all).collect {|u| [ u.name, u.id ] }) %>
  </p>
  <p>
    <%= f.submit "Create" %>
  </p>

<% end %>
评论
发表评论

您还没有登录,请登录后发表评论

rainlife
搜索本博客
我的相册
0b62aec5-97b6-35bb-8fce-a1dae18a8b4e-thumb
image008
共 11 张
存档
最新评论