gpt4 book ai didi

ruby-on-rails - 找不到 id=show 的帖子?

转载 作者:太空宇宙 更新时间:2023-11-03 17:16:37 25 4
gpt4 key购买 nike

我一直在研究 Ruby on Rails v.4.0.0 指南,并且刚刚完成了最后的代码。但是我有 3 个问题,我认为它们可能来自 1 个来源。无论出于何种原因,我的 SHOW 方法似乎都不起作用。我有一个“显示” View ,但它给我错误“无法找到 id=show 的帖子”。并告诉我 PostsController 的第 35 行是错误的。我已经找了一段时间,似乎找不到任何有足够类似问题的人。所以这是 Controller 和 View 。

Controller :

    1 class PostsController < ApplicationController
2
3 http_basic_authenticate_with name: "dhh", password: "secret",
4 except: [:index, :show]
5
6 def new
7 @post = Post.new
8 end
9
10 def create
11 @post = Post.new(params[:post])
12
13 if @post.save
14 redirect_to @post
15 else
16 render 'new'
17 end
18 end
19
20 def edit
21 @post = Post.find(params[:id])
22 end
23
24 def update
25 @post = Post.find(params[:id])
26
27 if @post.update(params[:post].permit(:title, :text))
28 redirect_to @post
29 else
30 render 'edit'
31 end
32 end
33
34 def show
35 @post = Post.find(params[:id])
36 end
37
38 def index
39 @post = Post.all
40 end
41
42 def destroy
43 @post = Post.find(params[:id])
44 @post.destroy
45
46 redirect_to posts_path
47 end
48
49 private
50 def post_params
51 params.require(:post).permit(:title, :text)
52 end
53 end

查看:

    1 <%= @post.each do |post| %>
2 <p>
3 <strong> Title: </strong>
4 <%= @post.title %>
5 </p>
6
7 <p>
8 <strong> Text: </strong>
9 <%= @post.text %>
10 </p>
11
12 <%end%>
13
14 <h2> Comments </h2>
15 <%= render @post.comments %>
16
17 <h2>Add a comment:</h2>
18 <%= render "comments/form" %>
19
20 <%= link_to 'Back to Posts', posts_path %>
21 | <%= link_to 'Edit Post', edit_post_path(@post) %>

完整的错误是:

ActiveRecord::RecordNotFound 在 PostsController#show找不到 id=show 的帖子

注意:我有阅读障碍,所以这可能只是一个拼写错误......

最佳答案

params[:id] 等于 "show" 而不是一些真实的 ID。可能您正在尝试访问错误的 url,如 /posts/show 而不是 /posts/1 或任何 ID 是什么。

关于ruby-on-rails - 找不到 id=show 的帖子?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18513740/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com