六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 164|回复: 0

rails获取用户提供的表单数据

[复制链接]

升级  88%

138

主题

138

主题

138

主题

举人

Rank: 3Rank: 3

积分
464
 楼主| 发表于 2013-2-7 19:46:10 | 显示全部楼层 |阅读模式
rails获取用户提供的数据,首先有一个input.html用来填写信息
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>Untitled Document</title></head><body><h1>This is the parameter test page!</h1><br><form action="\look\at">Please enter your name!<br><input type="text" name="text1"/><br>select from checkbox value,rails set it is "true" or "false"<br><input type="checkbox" name="check1" value="yes"/>Yes<br>select data from radio button<br><input type="radio" name="sex" value="man"/>男<input type="radio" name="sex" value="women"/>女select data from select button<br><select name="select1"><option value="red">red</option><option value="blue">blue</option><option value="green">green</option><select><br>select data from select button<br><select name="select2[]" multiple><option value="red">red</option><option value="blue">blue</option><option value="green">green</option><select><input type="submit"/></form></body></html> 提交到后台控制器里面处理
class LookController < ApplicationController  def at    @data=params[:text1]    @check=params[:check1]    @sex=params[:sex]    @select1=params[:select1]    @select2=params[:select2]  endend ActionControllerclass ApplicationController < ActionController::Base  helper :all # include all helpers, all the time  protect_from_forgery # See ActionController::RequestForgeryProtection for details  # Scrub sensitive parameters from your log  # filter_parameter_logging :passwordend 然后是页面的展现
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"><html>    <head>        <meta http-equiv="Content-Type" content="text/html; charset=GBK" />        <title>Untitled Document</title>    </head>    <body>        <h1>This is the parameter test page!</h1>        <br>        your name is <%=@data %>        <br>        <% if @check %>        you selected is yes!<%else %>        you selected is No!<%end %><br>you selected sex is <%=@sex%><br>you selected color is <%=@select1%><br>you selectect color list ...<Br><% for data in @select2%>you selectect co lor is <%=data%><br><%end%>    </body> </html> 总结:在rails框架中, 可以有多种方式来写html,这里用到的是最普通的一种。比如
<input type="text" name="text1"/>后台controller用来获取数据使用params[:name]来获取数据,然后存在类的实例变量里面 ◎name,页面就可以访问,
这里需要注意的就是关于select的控件,如果是选择一个,那么没什么不同的,但如果是多选,则需要指明是多选的,这包括
multiple这个关键字,还有就是名字的命名要加上[]符号。比如,这样rails才知道你是要多选,如果不加[],则被当作单选。
<select name="select2[]" multiple><option value="red">red</option><option value="blue">blue</option><option value="green">green</option><select>
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表