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" %>

<%= text_field "address", "street" %>

<%= text_field "address", "country" %>

<%= select_tag "address[user_id]", options_for_select(User.find(:all).collect {|u| [ u.name, u.id ] } )%>

<%= submit_tag 'SAVE' %>


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

Street
<%= f.text_field :street %>

Country
<%= f.text_field :country %>

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

<%= f.submit "Create" %>

<% end %>

你可能感兴趣的:(Rails,Ruby,ActiveRecord,F#)