我正在写博客,我想在同一页面上显示数据和提交表单,我已经有一些代码,但是以某种方式,当我按下提交按钮时,页面上的数据不会被更新
这是index.html.erb中的代码:
<table>
<tr>
<td>Titulo</td>
<td>Texto</td>
</tr>
<% @posts.each do |post| %>
<tr>
<td><%= post.titulo %></td>
<td><%= post.text %></td>
</tr>
<% end %>
</table>
<%= form_for @post do |f| %>
<p>
<%= f.label :titulo, "Titulo del post" %><br>
<%= f.text_field :titulo %>
</p>
<p>
<%= f.label :text, "Contenido" %><br>
<%= f.text_area :text %><br>
</p>
<p>
<%= f.submit "Publicar"%>
</p>
<%end%>
<%= render @posts %>
这是帖子的控制器:
class PostsController < ApplicationController
def index
@post = Post.new
@posts = Post.all
end
def new
end
def create
@post = Post.new(post_params)
redirect_to posts_path
end
def show
@post = Post.find(params[:id])
end
private
def post_params
params.require(:post).permit(:titulo, :text)
end
end
现在正在显示我在执行此操作之前创建的所有数据(因为我使用了像CRUD这样的ruby基础知识,而且我也不知道我是否必须在“ new” def中做点什么]]
我正在写博客,我想在同一页面上显示数据和提交表单,我已经有一些代码,但是以某种方式,当我按下提交按钮时,页面上的数据就不会更新...] >
将创建方法更改为此
def create
@post = Post.new(post_params)
@post.save
redirect_to posts_path
end