使用 Action Text 时数据被发送到错误 table?
Data being sent to the wrong table when using Action Text?
Using Ruby on Rails 6,用户保存他们的故事后(使用 Action Text 键入他们的故事),他们将被重定向到故事所在的 show
视图可以阅读。然而,什么也没有出现,而且在检查数据库时,似乎没有任何东西被保存。
在阅读了文档并观看了一些视频后,我从我的 Story
table 中删除了 body
列,以便由 ActionText 存储。
型号:
class Story < ApplicationRecord
# declare that body has a rich text field
has_rich_text :body
end
控制器:
def new
@story = Story.new
end
def create
@story = Story.new(params[:story_params])
if @story.save
redirect_to @story
else
render 'new'
end
end
def show
@story = Story.find(params[:id])
end
private
def story_params
params.require(:story).permit(:heading, :summary, :body)
end
表格来自new.html.erb
<%= form_with(model: @story) do |form| %>
<%= form.label :heading %> <br>
<%= form.text_area :heading %>
<br>
<%= form.label :summary %> <br>
<%= form.text_area :summary %>
<br>
<%= form.label :body %>
<%= form.rich_text_area :body %>
<br>
<%= form.submit %>
<% end %>
我希望 heading
和 summary
存储在 Story table 中,而 ActionText 处理 body
。
这是 happens 创建和保存故事时的内容。
正如所见 here,Story table 中没有任何内容被保存。
您实际上应该使用您的 story_params
方法:
@story = Story.new(story_params)
Using Ruby on Rails 6,用户保存他们的故事后(使用 Action Text 键入他们的故事),他们将被重定向到故事所在的 show
视图可以阅读。然而,什么也没有出现,而且在检查数据库时,似乎没有任何东西被保存。
在阅读了文档并观看了一些视频后,我从我的 Story
table 中删除了 body
列,以便由 ActionText 存储。
型号:
class Story < ApplicationRecord
# declare that body has a rich text field
has_rich_text :body
end
控制器:
def new
@story = Story.new
end
def create
@story = Story.new(params[:story_params])
if @story.save
redirect_to @story
else
render 'new'
end
end
def show
@story = Story.find(params[:id])
end
private
def story_params
params.require(:story).permit(:heading, :summary, :body)
end
表格来自new.html.erb
<%= form_with(model: @story) do |form| %>
<%= form.label :heading %> <br>
<%= form.text_area :heading %>
<br>
<%= form.label :summary %> <br>
<%= form.text_area :summary %>
<br>
<%= form.label :body %>
<%= form.rich_text_area :body %>
<br>
<%= form.submit %>
<% end %>
我希望 heading
和 summary
存储在 Story table 中,而 ActionText 处理 body
。
这是 happens 创建和保存故事时的内容。
正如所见 here,Story table 中没有任何内容被保存。
您实际上应该使用您的 story_params
方法:
@story = Story.new(story_params)