Ruby on rails 如何在视图中隐藏数据库信息?
当我试图运行我的代码时,我得到了上面的错误 如下图所示,页面帖子/索引页在页面页脚前显示一些信息: 我不知道它会从哪里来,因为这是它出现的唯一一页 以下是我的看法:Ruby on rails 如何在视图中隐藏数据库信息?,ruby-on-rails,ruby,Ruby On Rails,Ruby,当我试图运行我的代码时,我得到了上面的错误 如下图所示,页面帖子/索引页在页面页脚前显示一些信息: 我不知道它会从哪里来,因为这是它出现的唯一一页 以下是我的看法: <%= @post.each do |post| %> <h1 class="Blog_post_title"><%= link_to post.title, post %></h1> <p class="date"><%= post.created_at.strf
<%= @post.each do |post| %>
<h1 class="Blog_post_title"><%= link_to post.title, post %></h1>
<p class="date"><%= post.created_at.strftime("%B, %d, %Y") %></p>
<p><%= image_tag post.landing_image.url , class: "landing_image_blog" %></p>
<p><%= post.body %></p>
<%= link_to post do %>
<div class="button12">Continuer la lecture</div>
<% end %>
<div class="border_grey_blog"></div>
<% end %>
</div>
<%= render "footer" %>
连续洛杉矶讲座
my posts_controller.rb:
class PostsController < ApplicationController
def index
@post = Post.all.order('created_at DESC')
end
def new
@post = Post.new
end
def show
@post = Post.find(params[:id])
end
def edit
@post = Post.find(params[:id])
end
def update
@post = Post.find(params[:id])
if @post.update(params[:post].permit(:title,:title2,:title3,:title4,:title5,:title6,:title7,:title8,:title9, :body, :image,:image1,:image2,:image3,:image4,:image5,:image6,:image7,:image8, :landing_image, :some_text1, :some_text2, :some_text3, :some_text4, :some_text5, :some_text6, :some_text7, :some_text8, :some_text9, :some_text0))
redirect_to @post
else
render 'edit'
end
end
def create
@post = Post.new(post_params)
if @post.save
redirect_to @post
else
render 'new'
end
end
def destroy
@post = Post.find(params[:id])
@post.destroy
redirect_to "/posts"
end
private
def post_params
params.require(:post).permit(:title, :body, :image,:image1,:image2,:image3,:image4,:image5,:image6,:image7,:image8, :landing_image, :some_text1, :some_text2, :some_text3, :some_text4, :some_text5, :some_text6, :some_text7, :some_text8, :some_text9, :some_text0, :title2,:title3,:title4,:title5,:title6,:title7,:title8,:title9)
end
end
class PostsController
有什么想法吗 您的错误出现在视图的第一行:
<%= @post.each do |post| %>
应该是
<% @post.each do |post| %>
因为
它看起来像是您输出@posts.each的结果。请注意您在视图中是如何做到这一点的:
<%= @post.each do |post| %>
# other code
<% end %>
#其他代码
这实际上会将数组中的所有数据作为ruby对象输出。如果要将其更改为不输出所有内容,则需要将其更改为
<% @post.each do |post| %>
# other code
<% end %>
#其他代码
现在不会返回html中的@post.each