【发布时间】:2016-03-12 07:19:22
【问题描述】:
我正在为一个班级创建一个网站,我正在尝试使用一个名为“用户”的模型和一个名为“关系”的加入模型来实现一个好友请求功能。我在 user#show 页面上有一个按钮,应该使用关系控制器中的 create 方法添加朋友。这是按钮的代码:
<%= link_to "Add as Friend", relationships_path(:friend_id => @user), method: :post %>
但是,当我按下链接时,它会尝试访问 index 方法。在控制台中查看后,看起来该链接正在发送一个 GET 请求,该请求路由到 index 方法,而不是一个 POST 请求,该请求路由到 create 方法。有人可以解释为什么会发生此错误以及如何解决它吗?
编辑:根据要求,这是我的路线:
Rails.application.routes.draw do
resources :interests
get 'interests/create'
get 'interests/destroy'
get 'home/index'
get 'sessions/create'
get 'sessions/destroy'
resources :users
resources :relationships
resources :subscriptions
# The priority is based upon order of creation: first created -> highest priority.
# See how all your routes lay out with "rake routes".
# You can have the root of your site routed with "root"
# root 'welcome#index'
root 'home#index'
get "/auth/:provider/callback" => "sessions#create"
get "/signout" => "sessions#destroy", :as => :signout
【问题讨论】:
-
你在routes.rb中添加了这个路径吗?我认为您尝试访问的链接是:/relationships/:friend_id
-
请发布您的 routes.rb 文件
-
我已经添加了路由文件中的内容。
标签: ruby-on-rails