Ruby on rails Tyring将追随者添加到microposts,错误:';缺少参数microposts';
我一直在尝试使用以下控制器将追随者添加到MicroPost: microposts_controller.rb:Ruby on rails Tyring将追随者添加到microposts,错误:';缺少参数microposts';,ruby-on-rails,ruby,Ruby On Rails,Ruby,我一直在尝试使用以下控制器将追随者添加到MicroPost: microposts_controller.rb: def follow @user = current_user set_micropost if @micropost.user_id != current_user.id @micropost.followed += 1 @micropost.save end end 问题是总是有一个“缺少参数”错误“microposts”。这意味着我没有将@mi
def follow
@user = current_user
set_micropost
if @micropost.user_id != current_user.id
@micropost.followed += 1
@micropost.save
end
end
问题是总是有一个“缺少参数”错误“microposts”。这意味着我没有将@micropost
传递给控制器。这个
所以我不知道我做错了什么。定义了适当的路由(错误说明这是一个
microsposts#create
错误,我不确定原因。这里可能有一些不太正确的地方,但第一个突出的地方是,您似乎误解了链接到
的方法
选项的用途。这里是“方法”不是指控制器的方法名称,而是指用于请求的HTTP方法(如POST、PUT、DELETE等),因此此链接可能无意中调用了create
操作,而不是follow
操作
有关添加其他操作的信息,请参阅上的布线指南中的部分
作为创建添加追随者的方法的简要示例: 如果您的路线中有定义为资源的micropost:
resources :microposts
并希望有一个新的行动(如“遵循”)适用于个人微操作,您可以将您的资源更新为:
resources :microposts do
post 'follow', on: :member
end
然后,您可以在
micropost\u controller.rb
中添加一个follow
方法,类似于您已经完成的操作。编辑路由后,这还将提供一个follow\u micropost\u path
帮助函数,可用于链接到此操作。非常感谢,我将如何创建一个新的方法来添加追随者?抱歉关于不可靠的代码,我只是真的试图修复参数问题,并且还添加了一条由rails出于任何原因生成的额外“不可靠”路线,感谢您的帮助!