我正在通过教程制作一个reddit模型。当我在本地主机上时,我会在新页面(提交新链接)上提交标题和url。
每当我提交信息时,我都会看到一个空白的创建视图。
本教程要求我们找到一种方法来填充我们的数据库,并最终以我们提交的信息&我们的索引页上也有我们新提交的信息。
这是我为此编辑控制器的尝试,但我失败得很惨:
class LinksController < ApplicationController
def index
@link = Link.all
end
def show
@link = Link.find(params[:id])
end
def new
@link = Link.new
end
def create
@link = Link.new(link_params)
if @link.save
redirect_to @link
else
render action: 'new'
end
end
end
我收到一个错误,内容如下:
undefined local variable or method `link_params'
关于如何解决这个问题,有什么建议吗?
这是我的新观点:
这是新视图:
<%= form_for(@link) do |f| %>
<% if @link.errors.any? %>
<div id="error_explanation">
<h2><%= pluralize(@link.errors.count, "error") %> prohibited this link from being saved:</h2>
<ul>
<% @link.errors.full_messages.each do |msg| %>
<li><%= msg %></li>
<% end %>
</ul>
</div>
<% end %>
<div class="field">
<%= f.label :url %><br />
<%= f.text_field :url %>
</div>
<div class="field">
<%= f.label :title %><br />
<%= f.text_field :title %>
</div>
<div class="actions">
<%= f.submit %>
</div>
<% end %>
我的显示视图当前为空,保存一些标题文本:
此外,如果有人对如何进一步改进我的控制器提出了一些建议;为了获得期望的结果,我是一个新人;努力学习,谢谢。