Rails表单帮助方法使用之(select)
来源:互联网 发布:mirror.centos.org 编辑:程序博客网 时间:2024/06/05 20:47
基本工具请参考 Rails表单帮助方法
这里面记录了一些使用上的方法用到我会补充如果有问题大家可以在下面留言我会补充到上面开始的可能很简单请大家谅解!
在Ruby on Rails中真的有一堆Select helper可以用,我们经常容易混淆。常见的有三个
select, select_tag, collection_select
我们先来看看一个基本的下拉式选项骨架
<select name="ROR"><option value="1">ROR1</option><option value="2">ROR2</option><option value="3">ROR3</option></select>
在一个下拉式选项中,有一些是必备的信息,像”name”、”value”与”text”三个,在回传信息给Serve时,”name”将是接收信息用的,而”value”会传回被选的值,而”text”则是使用者会看到的字,依上面的例子来讲,ROR1、ROR2、ROR3就是属于”text”
开始讲讲哪三种Select helper
select:
select(object, method, choices, options = {}, html_options = {})
在ActionView::Helpers::FormOptionsHelper中定义
object事一个实体化变数,这里很明显的就是要摆上model物件嘛!
method则是object的一个属性,也是资料表中的对应项目
choices就是要被选的选项,可以事阵列或者事哈希(Hash)
options与html_options则是一些选项
来这里举个例子吧
<%= select("project", "teacher_id", @teachers.collect{|t| [t.name, t.id]}, { :include_blank => false }) %><%= select("project", "student_id", {"CFC" => '1', "EF" => '2'}) %>
第一个例子中,@teachers在Controller是这样的
@teachers = Teacher.find(:all, :select => 'id, name')
select_tag:
select_tag(name, option_tags = nil, options = {})
在ActionView::Helpers::FormTagHelper中定义
如果你很喜欢动手打option的话.. 那用select_tag准没错啦!
在select_tag中,name将会是params所接收值所用的键
直接看范例
<%= select_tag 'user', "<option>CFC</option>" %>
这时在Controller中将会用params[:user]来接收传过来的值
但是select_tag也可以搭配options_for_select或者options_from_collection_for_select一起使用.. 来看一个范例吧
<%= select_tag('sid[]', options_from_collection_for_select(@students, 'id', 'name'), :multiple => true)%>
因为加上了:multiple,所以可以接受多值选择,这时在Controller接收到的sid将会是一个阵列,这也是我所卡住的地方..
collection_select:
collection_select(object, method, collection, value_method, text_method, options = {}, html_options = {})
在ActionView::Helpers::FormOptionsHelper中定义
如果信息来源是数据库的话,可以使用这个来做下拉式选项。
这个Object不用我说,就是你的model
method呢?当然就是栏目了
其实说起來,这只是select+options_from_collection_for_select的组合啦!
范例:
<%= collection_select(:payment, :id, @payments, :id, :name, options ={:prompt => "-Select a continent"}, :class =>"payment") %>
- Rails表单帮助方法使用之(select)
- Ruby On Rails--Action View Form Helpers(页面表单帮助方法)
- Rails的表单helper: select
- Rails的表单helper: select
- 使用日期和时间表单帮助方法
- Rails 表单简单使用
- Rails 表单简单使用
- 表单帮助方法
- rails 表单使用问题汇总
- jQuery表单之 Select
- jQuery表单之 Select
- rails select
- rails select
- rails select
- mysql之帮助使用
- rails 的一些方法使用
- rails 表单数据保护(attr_protected、 attr_accessible)
- WSGI熟悉之Rails 入门(ruby-rails环境配置及简单使用)
- 关于iOS提交审核的IDFA-2
- 第11章 为Spring添加REST功能
- Abstract Class And Interface
- java-spring的JdbcTempldate对oracle 的CLob字段进行读和写
- java中应该尽量使用notifyall而不是notify(容易发生死锁)
- Rails表单帮助方法使用之(select)
- ld.so.conf的错误
- Forest Pack Pro(3DMax森林制作插件) v4.3.6
- oracle函数wm_concat行转列
- Hibernate搭建教程以及基础信息介绍
- CodeForces 471C
- android:descendantFocusability用法简析 item焦点问题
- android中在sd里面生成app包名的方法
- EF5.x Code First一对多关联条件查询Contains、Any和All使用示例