Rails中的路由功能是如何对应的?

我才开始接触ROR,我是参照agile web development with rails这本书学习,按照上面的例子走,但是我发现我请求的地址似乎和config/routes.rb里面设定并不一样,比如说routes中是这样设置的:
map.connect ':controller/:action/:id'

可是我在浏览器中编辑的时候显示的是:http://localhost:3000/products/2/edit

2是id编号,Edit是action名,这样不是和设置不一致么,为什么照样可以运行?
而显示页面的地址是:http://localhost:3000/products/2, 默认不是找index么?怎么controller后面直接跟id了呢?

这个机制到底是什么样的呢? 还请知道的帮我解惑,先谢过了.





2019-03-25 13:38

相关教程

更多

Rails4 已经移出了params可以解析xml的功能,拿rails4做微信API的童鞋们注意了

拜读了用 Rails 搭建微信公众平台 API之后发现,params[:xml]这个办法在Rails 4里面已经被办掉了,于是就看了一下Rails 4的新特性发现XML Parameter parsing has been sent to a plugin. 于是就去找这个plugin了,在Github上,地址是https://github.com/rails/actionpack-xml_par

在Rails中如何打开一个外部URL,并得到该URL的返回结果。

需要开发一个接口程序,外部程序提供了一个URL的接口,即访问一个URL,最终会得到相应的执行结果。  例如,  访问http://aaa.com?a='ccc'  则会得到一个页面。  在Rails中,会需要得到这个页面内的内容,再进行相关处理。  请问在Rails中有没有提供类似的方法。

如何在javascript中写rails的helper代码

如果在模板中这样写  <SCRIPT language=JavaScript>  var str = '<%= link_to_remote("ddddddddd", :update => "page_space_1",:url => {:action => :new}) %>'</SCRIPT> 到了页

請問:Rails該如何存取SQL2000中的圖像字段

我做了一個Rails應用已連接好SQL2000,其中SQL2000的一張表中有一個image類型的字段用來存圖片,不知如何用Rails來存和取?請這方面的高手不吝賜教!TKS!  问题补充:  不要告訴我存成一個url地址,然後再找相應圖片顯示的方法,這個我會.  问题补充:  谢谢!再问一下,对其他图片格式(如jpg,png等)或流媒体(mpeg,wmv,mov等)是否也可以一样存取?

路由器原理及路由协议

本文通过阐述TCP/IP网络中路由器的基本工作原理,介绍了IP路由器的几大功能,给出了静态路由协议和动态路由协议,以及内部网关协议和外部网关协议的概念,同时简要介绍了目前最常见的RIP、OSPF、BGP和BGP-4这几种路由协议,然后描述了路由算法的设计目标和种类,着重介绍了链路状态法和距离向量法。在文章的最后,扼要讲述了新一代路由器的特征。  ——近十年来,随着计算机网络规模的不断扩大,大型互联

路由器原理及路由协议

路由器原理及路由协议 本文通过阐述TCP/IP网络中路由器的基本工作原理,介绍了IP路由器的几大功能,给出了静态路由协议和动态路由协议,以及内部网关协议和外部网关协议的概念,同时简要介绍了目前最常见的RIP、OSPF、BGP和BGP-4这几种路由协议,然后描述了路由算法的设计目标和种类,着重介绍了链路状态法和距离向量法。在文章的最后,扼要讲述了新一代路由器的特征。 ——近十年来,随着计算机网络规模

路由器原理及路由协议

本文通过阐述TCP/IP网络中路由器的基本工作原理,介绍了IP路由器的几大功能,给出了静态路由协议和动态路由协议,以及内部网关协议和外部网关协议的概念,同时简要介绍了目前最常见的RIP、OSPF、BGP和BGP-4这几种路由协议,然后描述了路由算法的设计目标和种类,着重介绍了链路状态法和距离向量法。在文章的最后,扼要讲述了新一代路由器的特征。  ——近十年来,随着计算机网络规模的不断扩大,大型互联

路由器原理

转自:http://network.51cto.com/art/200511/11042_2.htm 近十年来,随着计算机网络规模的不断扩大,大型互联网络(如Internet)的迅猛发展,路由技术在网络技术中已逐渐成为关键部分,路由器也随之成为最 重要的网络设备。用户的需求推动着路由技术的发展和路由器的普及,人们已经不满足于仅在本地网络上共享信息,而希望最大限度地利用全球各个地区、各种类型 的网络

android APP 中微信分享功能实现 的总结

//花了很长时间最终完成了微信分享功能,中间走了很多弯路,在此做一下小结,希望对在应用中使用到微信分享的朋友有所帮助。 主要问题就是下面两个: 1、为什么运行了项目之后,微信分享只是闪了一下就没有了?  这个问题的解决办法就是等待微信审核通过,然后自然就能在应用中使用微信分享了。 2、为什么运行项目时微信分享可以使用,但是当打包成APK文件之后再安装到手机上之后,微信分享又出现类似于问题1中的情况

android APP 中微信分享功能实现 的总结

//花了很长时间最终完成了微信分享功能,中间走了很多弯路,在此做一下小结,希望对在应用中使用到微信分享的朋友有所帮助。 主要问题就是下面两个: 1、为什么运行了项目之后,微信分享只是闪了一下就没有了?  这个问题的解决办法就是等待微信审核通过,然后自然就能在应用中使用微信分享了。 2、为什么运行项目时微信分享可以使用,但是当打包成APK文件之后再安装到手机上之后,微信分享又出现类似于问题1中的情况

路由器原理(转)

通过阐述TCP/IP网络中路由器的基本工作原理,介绍了IP路由器的几大功能,给出了静态路由协议和动态路由协议,以及内部网关协议和外部网关协议的概念 AD:       近十年来,随着计算机网络规模的不断扩大,大型互联网络(如Internet)的迅猛发展,路由技术在网络技术中已逐渐成为关键部分,路由器也随之成为最重要的网络设备。用户的需求推动着路由技术的发展和路由器的普及,人们已经不满足于仅在本地网

请教怎么在CAS中添加验证码功能

公司项目要用到单点登录,根据linliangyi2007的CAS学习笔记初步掌握了CAS的使用,现在碰到一个问题就是我需要在CAS登录界面使用验证码,目前页面显示验证码和表单提交的时候获取用户输入的验证码都没有问题,但就是无法取到在Session中保存的验证码,请问该怎么处理?  问题补充:  问题可能描述得不清楚,这里补充一下:  假设应用服务器是A,CAS在B上,客户端是C  当我用C去访问A

教你将普通的wifi路由器变为智能广告路由器

相信大家对WiFi智能广告路由器已经不再陌生了,现在很多公共WiFi上网,都需要登录并且验证,这也就是WiFi广告路由器的最重要的功能。大致就是下面的流程:      但是,传统的智能WiFi广告路由器比较比较昂贵,且配置相当复杂,那么,有没有一种简单的办法将你自己的WiFi路由器变成广告路由器呢? 答案当然是肯定的,这也是今天我要教大家的办法。用软件的方法。   Step 1:当然是要去下载,百

Rails常用插件

测试驱动   rspec-rails:BDD测试框架      初始化:rails generate rspec:install capybara:模拟浏览器器行为 factory_girl_rails:生成数据 database_cleaner:清除数据库数据 simplecov:覆盖率测试 faker:生成假数据 launchy:在浏览器中打开测试用例 guard-rspec:监视文件改变,自

如何设计一个漂亮的路由

先简单说一下我的情况:有一个posts的controller,它负责CRUD等一系列操作,现在有一个需求是列出“我评论过的文章”的列表,最初我是这样设计的  in app/controllers/posts_controller.rb  def my_replied   # ignore codes end 这样写有一个好处,就是产生的路由很易懂,如浏览器的地址栏会显示/posts/my_repl

最新教程

更多

java线程状态详解(6种)

java线程类为:java.lang.Thread,其实现java.lang.Runnable接口。 线程在运行过程中有6种状态,分别如下: NEW:初始状态,线程被构建,但是还没有调用start()方法 RUNNABLE:运行状态,Java线程将操作系统中的就绪和运行两种状态统称为“运行状态” BLOCK:阻塞状态,表示线程阻塞

redis从库只读设置-redis集群管理

默认情况下redis数据库充当slave角色时是只读的不能进行写操作,如果写入,会提示以下错误:READONLY You can't write against a read only slave.  127.0.0.1:6382> set k3 111  (error) READONLY You can't write against a read only slave. 如果你要开启从库

Netty环境配置

netty是一个java事件驱动的网络通信框架,也就是一个jar包,只要在项目里引用即可。

Netty基于流的传输处理

​在TCP/IP的基于流的传输中,接收的数据被存储到套接字接收缓冲器中。不幸的是,基于流的传输的缓冲器不是分组的队列,而是字节的队列。 这意味着,即使将两个消息作为两个独立的数据包发送,操作系统也不会将它们视为两个消息,而只是一组字节(有点悲剧)。 因此,不能保证读的是您在远程定入的行数据

Netty入门实例-使用POJO代替ByteBuf

使用TIME协议的客户端和服务器示例,让它们使用POJO来代替原来的ByteBuf。

Netty入门实例-时间服务器

Netty中服务器和客户端之间最大的和唯一的区别是使用了不同的Bootstrap和Channel实现

Netty入门实例-编写服务器端程序

channelRead()处理程序方法实现如下

Netty开发环境配置

最新版本的Netty 4.x和JDK 1.6及更高版本

电商平台数据库设计

电商平台数据库表设计:商品分类表、商品信息表、品牌表、商品属性表、商品属性扩展表、规格表、规格扩展表

HttpClient 上传文件

我们使用MultipartEntityBuilder创建一个HttpEntity。 当创建构建器时,添加一个二进制体 - 包含将要上传的文件以及一个文本正文。 接下来,使用RequestBuilder创建一个HTTP请求,并分配先前创建的HttpEntity。

MongoDB常用命令

查看当前使用的数据库    > db    test  切换数据库   > use foobar    switched to db foobar  插入文档    > post={"title":"领悟书生","content":"这是一个分享教程的网站","date":new

快速了解MongoDB【基本概念与体系结构】

什么是MongoDB MongoDB is a general purpose, document-based, distributed database built for modern application developers and for the cloud era. MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。

windows系统安装MongoDB

安装 下载MongoDB的安装包:mongodb-win32-x86_64-2008plus-ssl-3.2.10-signed.msi,按照提示步骤安装即可。 安装完成后,软件会安装在C:\Program Files\MongoDB 目录中 我们要启动的服务程序就是C:\Program Files\MongoDB\Server\3.2\bin目录下的mongod.exe,为了方便我们每次启动,我

Spring boot整合MyBatis-Plus 之二:增删改查

基于上一篇springboot整合MyBatis-Plus之后,实现简单的增删改查 创建实体类 添加表注解TableName和主键注解TableId import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baom

分布式ID生成器【snowflake雪花算法】

基于snowflake雪花算法分布式ID生成器 snowflake雪花算法分布式ID生成器几大特点: 41bit的时间戳可以支持该算法使用到2082年 10bit的工作机器id可以支持1024台机器 序列号支持1毫秒产生4096个自增序列id 整体上按照时间自增排序 整个分布式系统内不会产生ID碰撞 每秒能够产生26万ID左右 Twitter的 Snowflake分布式ID生成器的JAVA实现方案