Rails link_to 详解
例子:
代码:
<%= link_to "Issues", {:controller => "issue", :action => "index"}, {:title => "Issues"} %>
事实上,html元素的属性都可以通过这样的方式来设置。比如添加一个click事件处理:
代码:
<%= link_to "Issues", {:controller => "issue", :action => "index"}, {:onclick => "alert(1)"} %>
但是值得注意的就是,link_to 的第二个参数,必须是以 map 的形式给出,才能达到这样的效果。link_to 是 rails 默认提供的工具方法,它还有一个过载的方法,如
代码:
<%= link_to "Issues", "index", {:onclick => "alert(1)"} %>
上面的代码显示的连接将为 "/xxxxx/controller/index?onclick=alert(1)"
所以如果第二个参数以字符串的形式给出,此时其后的参数,就变为queryString了。
那么如何实现又增加 click 事件处理,又增加url参数呢,很简单, 如下:
代码:
<%= link_to "Issues", {:controller => "issue", :action => "index", :param=value}, :onclick => "alert(1)" %>
结果为:
代码:
<a href="/issue/index?param=value" script_onclick="alert(1)">Issues</a>
相关推荐
-
Windows下Ruby on Rails开发环境安装配置图文教程
本文详细介绍如何在Windows配置Ruby on Rails 开发环境,希望对ROR初学者能有帮助. 一.下载并安装Ruby Windows下安装Ruby最好选择 RubyInstaller(一键安装包). 下载地址: http://rubyforge.org/frs/?group_id=167 . 我们这里下载目前较新的rubyinstaller-1.9.3-p0.exe 一键安装包.这个安装包除了包含ruby本身,还有许多有用的扩展(比如gems)和 帮助文档. 双击安装,安装过程出现如下
-
ruby on rails 代码技巧
git仓库输出 git archive --format=tar --prefix=actasfavor/ HEAD | (cd /home/holin/work/ && tar xf -) 输出到/home/holin/work/actasfavor/目录下 Posted by holin At May 16, 2008 16:42 加载plugins中的controller和model # Include hook code here require 'act_as_favor' #
-
CentOS中配置Ruby on Rails环境
详细安装步骤: 一.更新Python centos 中默认安装的python是2.4的版本,因为新版的rails需要提供nodejs的相关支持,需要更新python,更新文章可以直接移步到这个链接 http://www.tomtalk.net/wiki/Python 复制代码 代码如下: yum install -y bzip2* #nodejs 0.8.5需要,请安装python前,先安装此模块. wget http://www.python.org/ftp/pytho
-
win7安装ruby on rails开发环境
前言 看到很多文章都说ruby环境在windows上是非常难搭建,会出现各种各样的怪问题,所以都推荐到linux和mac上安装开发.但是我按照教程搭了下,问题也不算太多.总过大概花费了2个半小时左右就完成了.所以大家不要被吓尿了,下面就把安装的步骤及具体的版本记录了一下供大家参考. 安装步骤: 开发机环境:我使用的开发机:win7 旗舰版 - 64位 (cpu是i5). 1 安装 rubyinstaller-2.0.0-p481.exe 1 选择安装目录:(如:D:\server\Rub
-
在阿里云 (aliyun) 服务器上搭建Ruby On Rails环境
1.阿里云的一键安装web全环境 下载一键安装web全环境 sh.zip 压缩包 上传至服务器,解压.执行脚本,具体步骤详见这里 $ mv sh.zip /home/tmp/ & cd /home/tmp $ unzip sh.zip $ chmod -R 777 sh & cd sh # 任意选择一种方法执行脚本 # 方法一 $ ./install.sh # 方法二 $ ./install_nginx_xxx.sh $ ./install_mysql_xxx.sh 2.安装RVM与指定的
-
攻克CakePHP(PHP中的Ruby On Rails框架)图文介绍第1/2页
CakePHP框架首页: http://www.cakephp.org/ 下载后导入工程中,目录结构如下图(使用版本:1.1.19.6305) 搭建PHP环境,这里使用了AppServ2.5.9. 下载主页 http://www.appservnetwork.com/ MySQL中新建数据库blog,并运行如下SQL文建表. /**//* First, create our posts table: */CREATE TABLE posts ( id INT UNSIGNED AUTO_I
-
rails "No route matches" 错误的解决方法
有时候 rails 会出现: "No route matches"错误, 可以利用如下方法解决; 找到 config/routes.rb 文件, 打开编辑, 找到如下行: # See how all your routes lay out with "rake routes" 在这行下面添加一行, 内容如下: map.connect '',:controller=>"index",:action=>"index"
-
rails 连接mysql的问题解决
找不到指定的模块. - c:/ruby/lib/ruby/gems/1.8/gems/mysql-2.7.3-x86-mswin32/ext/mysql.so 实际上是找不到连接所需的dll文件:libmySQL.dll 在mysql安装目录下的bin目录下将此文件复制到ruby的bin目录下即可解决此问题.
-
rails常用数据库查询操作、方法浅析
1.获取数据 获取第一条.最后一条记录 复制代码 代码如下: Model.first Model.first(options) Model.find(:first, options) Model.last Model.last(options) Model.find(:last, options) 通过id获取记录 复制代码 代码如下: Model.find(1, 10, options) Model.find([1, 10], options) .find all 复制代码 代码如下: Mod
-
学习Ruby你需要了解的相关知识(rvm, gem, bundle, rake, rails等)
Ruby 这个就不用多说了 RVM 用于帮你安装Ruby环境,帮你管理多个Ruby环境,帮你管理你开发的每个Ruby应用使用机器上哪个Ruby环境.Ruby环境不仅仅是Ruby本身,还包括依赖的第三方Ruby插件.都由RVM管理. Rails 这个也不用多说,著名开发框架.详细看 http://zh.wikipedia.org/wiki/Ruby_on_Rails RubyGems RubyGems是一个方便而强大的Ruby程序包管理器( package manager),类似RedHat的RP
-
以MVC的思维方式来理解Ruby on Rails框架的设计结构
在rails中,发送一个请求(/users)的处理全过程如下: 1).浏览器发送请求(/users) 2).Rails的 routes会把请求路由给users_controller的index方法 3).users_controller回调用User Model获取所有的user 4).User Model会从数据库中把所有的user读取出来, 5).User Model把从数据库读取出来的所有user封装为List返回给user_controller 6).user_controlle把Use
-
Ruby rails 页面跳转(render和redirect_to)
Ruby代码 复制代码 代码如下: if @user.update_attributes(:password => params[:user][:password]) flash[:notice] = '密码修改完成' redirect_to :action => 'index' else redirect_to :action => 'change_pass', :id => @user end 后来随手改了下第5行,把redirect_to改为render,居然就OK了.网上找
随机推荐
- VBS教程:VBscript属性-FirstIndex 属性
- golang简单读写文件示例
- cd命令 目录跳转
- json格式化/压缩工具 Chrome插件扩展版
- [Oracle] 常用工具集之SQL*Loader的用法
- js常用系统函数用法实例分析
- Android动画之雷达扫描效果
- python实现在pickling的时候压缩的方法
- 利用Celery实现Django博客PV统计功能详解
- Yii2使用自带的UploadedFile实现的文件上传
- Tomcat Cannot assign requested address: JVM_Bind 非端口占用冲突
- Android控件PopupWindow模仿ios底部弹窗
- 用双网卡实现三机互联
- 使用 vue.js 构建大型单页应用
- vue动态绑定组件子父组件多表单验证功能的实现代码
- 使用Maven Helper解决Maven插件冲突的方法
- Java String类正则操作示例
- python3.5 cv2 获取视频特定帧生成jpg图片
- java通过Idea远程一键部署springboot到Docker详解
- 使用python对excle和json互相转换的示例