为什么在轨使用2的link_to时添加的路由文件的连接

我试图完成下列工作:

<%=的link_to“退出”,{:控制器=>'用户',:动作=>'退出'}:类=>'menulink2“%>

但是,这并不工作,它总是重定向我表演视图。 我必须有以下我的routes.rb:

map.connect“用户/注销”,:控制器=>'用户',:动作=>'注销'

为什么不承认铁轨我是路过的动作('注销')?

--------------解决方案-------------

这一逻辑在某处被指定。 我们有了从哈希一些映射{:controller => 'users', :action => 'logout'}到一个URL,而这在轨的点位是routes.rb文件。 在旧版本的轨道许多routes.rb来,并在最后一个默认的:

map.connect ':controller(/:action/(:id(.:format)))'

这将让这个大多数的:控制器:动作哈希可以指定,然后发送到host.url/:controller/:action


随着更多的现代版本的资源型路线被看好,和控制器不遵循Rails的REST约定(即只有:index,:show,:create,:new,:edit,:update,:destroy方法)一般必须有自己的路线以某种方式明确指定。

(不论map.resources :users, :collection => {:get => :logout}map.connect( 'some_url', :controller => 'users', :action => 'logout'})


我猜,但他们这样做的原因可能是控制器的行为其实只是它的公共方法。

这是经常很高兴有你的控制器无法网址终点用于测试目的的公共方法。

例如,你可以有before_filter s表示您可能希望不必使用,以测试公众方法@controller.send(:your_before_filter_method)在您的测试代码。

所以他们列入白名单的资源操作,使他人无法访问默认。 让我看看通过铁轨的changelog,看看我是对的。

分类:Ruby on Rails的 时间:2012-01-01 人气:0
分享到:

相关文章

  • Ruby on Rails的:链接到使用POST方法,但参数的URL 2012-06-07

    我在用着 link_to 'My link', path(:arg1 => session[:arg1], :arg2 => session[:arg2],:arg3 => anyobject.id), :method => :post 而正在生成的HTML链接包括(ARG1,ARG2,ARG3)作为URL查询参数. 如何删除呢? 我错过了什么文件吗? --------------解决方案------------- 一个link_to将始终把参数传递到查询字符串,因为它是建立一个G

  • 在Ruby on Rails的路线 2012-11-10

    我用脚手架创建模型和控制器. 它运作良好. 然后,我开始编辑/删除一些控制器动作. 所以,我提出参股/新>参股/注册. 这不能正常工作,它说:"未知的行动",但它说,它有动作注册. 有趣的是,如果我去参股/注册使用大写P.然后它的工作! 我也做了耙路线,其中参股/新仍显示,即使我编辑的方法名. 有什么特别的,我需要做定义操作? --------------解决方案------------- 你需要编辑配置/ routes.rb中的文件,也并告诉Rails应该如何处理的参股/注册路

  • Ruby on Rails的:链接更新数据库 2012-12-05

    简单的回报率的问题......我正在学习ROR和我做一个简单的投票程序. 候选人列在一个表中,并有upvote / downvote链接到对方的名字. 我想使它所以所有的用户确实是点击链接,计票进行更新,他们将被重定向到初始页面. 我不使用脚手架. 出于某种原因,这个动作没有做任何接近我想要的: def upvote @name = Name.find(params[:id]) @name[:votes] += 1 respond_to do |format| if @name.update_a

  • 如何创建像朗奇岩在Ruby on Rails的转诊链接? 2013-04-27

    我想创建这样推介链接. www.abc.com/1234 www.abc.com/4345 凡数目,这将是为每个用户独特的推介代码. 我相信这可以在宝石上做了一些路线配置轨. 指其中请求将被路由. 哪个控制器? 哪个动作? 如何获得的唯一代码值. 任何人可以帮助我吗? PS:朗奇岩是用这样的推介链接. --------------解决方案------------- 您可以使用此结构的路由匹配,但你需要有转诊码匹配特定的模式. 如果,例如,它们匹配的3个字母后跟三个数字的格式,你可以把你的如下ro

  • Ruby on Rails的路线:在馆藏资源 2013-08-13

    我需要一个链接,该链接将指向所有作业,标记为PHP. 这种结构对我来说很有意义: site.com/jobs/skills/php 我该怎么做这在Rails的? resources :jobs do collection do resources :skills, as: :find_by_skill end end 但是,这并不工作,当我尝试调用jobs_find_by_skill(技能)帮手. 哪里出了问题? 如果不能这样做,你可以建议对这类目的的更好的URL结构? ------------

  • 自动点击Ruby on Rails中的链接 2014-07-22

    您好我在红宝石我的工作在轨道上, 我想自动点击 <%= link_to 'Referesh', :onclick => 'window.opener.location.reload(true)' %> 当我提交的表格 <%= f.submit 'Save' %> 我的问题是我怎么能上的link_to执行自动点击,当我通过f.submit提交表单. 两者都是以相同的形式. --------------解决方案------------- 我不知道为什么/你想做的事..这个问题不明

  • Ruby on Rails的路线与语言环境 2012-07-28

    我使用这个指南:http://edgeguides.rubyonrails.org/i18n.html 我想: /about去pages#about用的拖欠区域en . /en/about去pages#about使用的语言环境en . /es/about去pages#about使用的语言环境es . 我得到: /about去root_path使用的语言环境about . /en/about去pages#about使用的语言环境en . /es/about去pages#about使用的语言环境es

  • Ruby on Rails的路线 2013-02-03

    我无法弄清楚如何获得以下途径. 下面是从我的routes.rb文件的摘录: map.resources :treatments map.root :controller => "home" map.connect ':controller/:action/:id' map.connect ':controller/:action/:id.:format' map.connect ':action', :controller => 'home' # replaces the

  • 一个Ruby on Rails的路线错误? 2013-03-17

    但我有一个"新用户"登记表的麻烦. 有人可以解释这个错误? 我在注册页面出现此错误: No Method Error undefined method `users_path' for #<#<Class:0x104b06c60>:0x104b018f0> Extracted source (around line #6): 3: <br /> 4: 5: <div> 6: <%= form_for(@user, :id =>

  • 渲染现场数据作为Ruby on Rails中的链接 2014-12-16

    好吧,我觉得这可能是一个简单的问题,但我的生活,我不能弄明白. 我创建了一个表称为ugtags并在该表中我有两列(超越基础),"名"和"链接". 我想允许用户添加一个链接到一个网页. 理想的情况下,他们将进入链接的标题(名称)和URL(链接),在视图中,将显示标题为纽带,以被输入到链接栏中的URL. 我有没有办法简单地影响做<%= link_to h(ugtag.name) %>代码? --------------解决方案------------- 你应

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.448 (s). 10 q(s)