我有一个使用mongodb的Rails应用程序。我有一个模型 Bot ,其属性为 link (字符串)。我希望用户使用包含主机和链接的唯一链接重定向到其个人资料(例如http://localhost:3000/bots/home/06b5f629b3fbec5612ef79dd14d8d762)。
的routes.rb
get 'bots/home/:link' => 'bots#home'
bots_controller.rb
def home
@hu = request.url[32..-1]
@bots = Bot.where(link: @hu)
end
因此,我尝试从请求中检索此唯一值,并将其与db中 Bot 的 link 属性相匹配,但它不起作用。
答案 0 :(得分:0)
首先,使用:link
param,您将所有已命名并清理的内容发送给您的控制器。
然后,我想你想要得到一个Bot,而不是Bots的集合。如果您使用的是Bots集合,那么您的语法很好,或者在.first
where
所以,你的方法看起来应该是这样的,而不是深入研究政治正确性:
def home
@bots = Bot.where(link:params[:link])
end