gpt4 book ai didi

ruby-on-rails - Rails REST 路由 : dots in the resource item ID

转载 作者:行者123 更新时间:2023-12-03 13:39:24 24 4
gpt4 key购买 nike

我的 routes.rb 中有以下内容:

resources :users, :except => [:new, :create] do
get 'friends', :as => :friends, :on => :member, :to => "users#friends"
end

并在我的 user.rb 中关注:
def to_param
self.login
end

例如,当登录中带有点的用户(例如'any.thing')来自facebook时,rails会给出路由错误(找不到路由,我想这是因为它将点之后的任何内容识别为格式或由于路由限制)。我怎样才能克服这个错误?

最佳答案

以下约束定义允许 id 中的点以及除斜杠之外的任何字符。

必须明确定义支持的格式(此处为 .html 和 .json)以不被 id 采用。

resources :foobars,
:constraints => { :id => /[^\/]+(?=\.html\z|\.json\z)|[^\/]+/ }

该约束定义适用于 Rails 3.1

对于早期的 Rails 版本,您可能需要在 regin gem 中向后移植前瞻支持(它在 rack-mount gem 中提供)

关于ruby-on-rails - Rails REST 路由 : dots in the resource item ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5222760/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com