我是rails开发的新手。
我创建了一个名为review的新数据库模型和一个名为reviews_controller的控制器。在我的路线文件中,我创建了评论资源。但是,当我尝试在链接中使用评论#show时,我收到了错误消息。没有路线匹配{:action =>“show”,:controller =>“reviews”}。
我看了这个错误,但是我发现的任何结果都比我使用的代码更复杂。我在这里缺少一些非常基本的东西。
模型的代码是
class Review < ActiveRecord::Base
belongs_to :user
end
控制器的代码是
class ReviewsController < ApplicationController
def show
@review = Reviews.find(params[:id])
end
def new
end
end
我在标题部分中的链接是
<li><%= link_to "Review", review_path %></li>
我的路线文件中的代码
resources :users #New Line
resources :sessions, only: [:new, :create, :destroy]
resources :microposts, only: [:create, :destroy]
resources :reviews
任何对此的帮助都将非常感激,因为我无法在此处获得任何帮助。
答案 0 :(得分:1)
欢迎来到SO!
由于您要链接到特定评论,因此您需要将评论的ID传递给link_to方法。
<li><%= link_to "Review", review_path(@review) %></li>
Rails非常聪明,可以使整个@review对象找出它的id。
或者,您可以使用
链接到所有评论<li><%= link_to "Reviews", reviews_path %></li>
由于你说你的标题部分中有这个链接,这可能就是你真正想做的事情。