首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在微博中添加跟随者,错误:“缺少参数微博”

在微博中添加跟随者,错误:“缺少参数微博”
EN

Stack Overflow用户
提问于 2018-08-05 20:36:15
回答 1查看 39关注 0票数 1

我一直试图通过以下控制器将追随者添加到微博上:

microposts_controller.rb:

代码语言:javascript
复制
def follow
  @user = current_user
  set_micropost
  if @micropost.user_id != current_user.id
    @micropost.followed += 1
    @micropost.save
  end
end

问题是,总是有一个“缺失的参数”错误‘微博’。这意味着我不会将一个@micropost传递给控制器。The <%= link_to 'Follow' uses micropost_new_path(micropost), method: 'follow' %>

所以我不知道我做错了什么。定义适当的路由(错误声明这是一个microposts#create错误,我不知道为什么。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-05 21:11:15

这里可能有一些不太正确的地方,但第一个突出的问题是,您似乎误解了method选项用于link_to的目的。在这里," method“并不意味着您的控制器的方法的名称,它意味着用于请求的HTTP方法(例如POST、PUT、DELETE等等)。因此,这个链接很可能是无意中调用create操作而不是follow操作。

要添加其他操作,请参阅添加更多RESTful操作路由指南中的部分

作为创建添加关注者的方法的一个简单示例:

如果您的路线中有一个被定义为资源的微站:

代码语言:javascript
复制
resources :microposts

并希望有一个新的操作(如“跟踪”)应用于个人微博,您可以将资源更新为:

代码语言:javascript
复制
resources :microposts do
  post 'follow', on: :member
end

然后,您可以在您的follow中添加一个microposts_controller.rb方法,类似于您已经完成的工作。在编辑您的路由之后,这还将提供一个follow_micropost_path助手函数,该函数可用于链接到此操作。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51698068

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档