7--Rails路由
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了7--Rails路由相关的知识,希望对你有一定的参考价值。
?
路由配置文件中默认包含7种路由,我们排除掉show路由之后再去访问如下:
我们排除了show这个路由,那么还可以通过普通方式添加进去
动作是get,‘posts/:id‘是浏览器输入的路由格式,:to=>‘posts#show‘是交给对应的控制器和action
还有要注意请求动作不出现先url中,但是如果请求动作与action如果不对应,那么就算路由写对了,还是无法访问,比如show的完成动作应该是get而下面却写成post。
报错说找不到匹配的路由,因为浏览器对show请求方式是get,而我们路由配置文件写的是post,所以报错。
如果我们同时需要post和get,那么都写上就行了。
一个web工程接收http请求的方式除了在浏览器输入以外,在工程代码里就是以超链接的形式。
我们删除显示微博页面的那段代码:
删除之后:
首页Content下面的内容已经没有了,也没有Show那些超链接了
那么我们想在这个页面添加链接,点击转到id为1的微博,可以这么写:
这里使用rails的辅助方法link_to,它的作用就是生成一个超链接标签,第一个参数就是标签的文字,第二个花括号链接的目的url的硬编码说明。
点击超链接之后:
?
我们在路由配置中,如下图,那么些路由其实还是很麻烦
更快捷的方式叫命名路由,也就是给路由起个名字作为全局名称,生成一个全局的url连接名称,使我们在创建一个url连接的时候不用再显示地写出路由的控制器、动作和参数,不用写出下面花括号内那样的长串,而是简单的写出路由的名称就可以
命名路由的写法和用法也很简单,改成如下两个代码图即可
使用时show_post就是辅助方法,我们在后面加_path,参数传入id即可。其他用法类似。
以上是关于7--Rails路由的主要内容,如果未能解决你的问题,请参考以下文章
Express实战 - 应用案例- realworld-API - 路由设计 - mongoose - 数据验证 - 密码加密 - 登录接口 - 身份认证 - token - 增删改查API(代码片段