本文共 3336 字,大约阅读时间需要 11 分钟。
1.表单类型一 <div class=""class="form"> <%= error_messages_for 'user' %> <fieldset> <legend>请输入用户信息</legend> <% form_for :user do |form| %> <p> Name: <%= form.text_field :username, :size => 30 %> </p> <p> Password: <%= form.password_field :password, :size => 30 %> </p> <p> ConfirmPassword: <%= form.password_field :password_confirmation, :size => 30 %> </p> <%= submit_tag "注册", :class => "submit" %> <% end %> </fieldset> </div> 此种是对象绑定的方式,通过表单,跟Model层的对象绑定,通常完成数据的增,改功能。2.表单类型二 <div class=""class="form"> <%= error_messages_for 'user' %> <fieldset> <legend>请输入用户信息</legend> <% form_tag do %> <p> Name: <%= text_field_tag :username, params[:username], :size => 30 %> </p> <p> Password: <%= password_field_tag :password, params[:password], :size => 30 %> </p> <%= submit_tag "注册", :class => "submit" %> <% end %> </fieldset> </div> 此种主要是为了表单传值 form_for和model绑定,而form_tag不是 form_tag想传什么参数都行,没有约束==================[以下内容转自网络]=================================== 表单开始标签: <%= form_tag { :action => :save }, { :method => :post } %> Use :multipart => true to define a Mime-Multipart form (for file uploads) 表单结束标签: <%= end_form_tag %>文本框 Text fields <%= text_field :modelname, :attribute_name, options %> 生成: <input type="text" name="modelname[attribute_name]" id="attributename" />实例: text_field "post", "title", "size" => 20 <input type="text" id="post_title" name="post[title]" size="20" value="}" />隐藏框: <%= hidden_field ... %>密码框: <%= password_field ... %>文件框 <%= file_field ... %>Rails Textarea框 <%= text_area ... %> 实例: text_area "post", "body", "cols" => 20, "rows" => 40 <textarea cols="20" rows="40" id="post_body" name="post[body]"> } </textarea>单选框 Radio Buttons <%= radio_button :modelname, :attribute, :tag_value, options %> 实例: radio_button "post", "category", "rails" radio_button "post", "category", "java" <input type="radio" id="post_category" name="post[category]" value="rails" checked="checked" /> <input type="radio" id="post_category" name="post[category]" value="java" />多选框 Check Box <%= check_box :modelname, :attribute, options, on_value, off_value %> 实例 check_box "post", "validated" # post.validated? returns 1 or 0 <input type="checkbox" id="post_validate" name="post[validated]" value="1" checked="checked" /> <input name="post[validated]" type="hidden" value="0" />check_box "puppy", "gooddog", {}, "yes", "no" <input type="checkbox" id="puppy_gooddog" name="puppy[gooddog]" value="yes" /> <input name="puppy[gooddog]" type="hidden" value="no" /><%= select :variable, :attribute, choices, options, html_options %> 下拉菜单框 Select Menu select "post", "person_id", Person.find_all.collect {|p| [ p.name, p.id ] }, { :include_blank => true }<select name="post[person_id]"> <option></option> <option value="1" selected="selected">David</option> <option value="2">Sam</option> <option value="3">Tobias</option> </select>Collection Selection <%= collection_select :variable, :attribute, choices, :id, :value %>日期选择框: <%= date_select :variable, :attribute, options %> <%= datetime_select :variable, :attribute, options %> 实例: date_select "post", "written_on" date_select "user", "birthday", :start_year => 1910 date_select "user", "cc_date", :start_year => 2005, :use_month_numbers => true, :discard_day => true, :order => [:year, :month]datetime_select "post", "written_on" |
转载地址:http://qbadi.baihongyu.com/