Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails RubyonRails排除路由约束中的组元素_Ruby On Rails_Regex_Ruby On Rails 3_Routes_Constraints - Fatal编程技术网

Ruby on rails RubyonRails排除路由约束中的组元素

Ruby on rails RubyonRails排除路由约束中的组元素,ruby-on-rails,regex,ruby-on-rails-3,routes,constraints,Ruby On Rails,Regex,Ruby On Rails 3,Routes,Constraints,我想知道,如何为我的路线定义约束正则表达式,只有当它排除组中的每个元素时,它才会匹配 例如,我想这样做: get "list/:action", :constraints => {:action => [NONE OF THE FOLLOWING: (new, edit, delete, update)} 我知道如果我们想让它匹配列表中的任何元素,我们会这样定义: get“list/:action”,:constraints=>{:action=>/(new | edit | de

我想知道,如何为我的路线定义约束正则表达式,只有当它排除组中的每个元素时,它才会匹配

例如,我想这样做:

get "list/:action", :constraints => {:action => [NONE OF THE FOLLOWING: (new, edit, delete, update)}
我知道如果我们想让它匹配列表中的任何元素,我们会这样定义:

get“list/:action”,:constraints=>{:action=>/(new | edit | delete | update)/},
但我不知道如何让它像上面描述的那样工作

我试过使用
^
在小组前签名,但到目前为止运气不好-我认为必须有另一个符号


如何排除这些元素?

请尝试以下操作。它将从路由中排除操作

class ExcludeActions
  def matches?
    ["new", "edit", "delete", "update"].exclude? params[:action]
  end
end

get "list/:id", :constraints => ExcludeActions.new

这将从
列表的路由中排除
新建
编辑
删除
更新
操作

否,我不能使用资源指令。我只需要使用约束。该类应在名为
exclude\u actions.rb的单独模型中编写