[英]Why am I getting this error with my RoR app?
I get this error: 我收到此错误:
NoMethodError in Videos#new
Showing /rubyprograms/dreamstill/app/views/videos/new.html.erb where line #1 raised:
undefined method `videos_path' for #<#<Class:0x10398f8d8>:0x10398dbc8>
I have one Video model and a videos controller with a new
and create
method. 我有一个Video模型和一个带有
new
和create
方法的video控制器。 My routes.db
file has root :to => "videos#new"
. 我的
routes.db
文件具有root :to => "videos#new"
。 I have one view new.html.erb
with this code: 我使用以下代码查看
new.html.erb
:
<%= form_for(@video) do |f| %>
<% if @video.errors.any? %>
<div id="errorExplanation">
<h2><%= pluralize(@video.errors.count, "error") %> prohibited this video from being saved:</h2>
<ul>
<% @video.errors.full_messages.each do |msg| %>
<li><%= msg %></li>
<% end %>
</ul>
</div>
<% end %>
<div class="field">
<%= f.label :video_url %><br />
<%= f.text_field :video_url %>
</div>
<div class="actions">
<%= f.submit %>
</div>
<% end %>
And my controller has this: 我的控制器有这个:
def new
@video = Video.new
end
def create
@video = Video.new(params[:video])
respond_to do |format|
if @article.save
format.html #{ redirect_to(@video, :notice => 'Article was successfully created.') }
else
format.html { render :action => "new" }
end
end
end
This is all that's in my routes file: 这就是我的路线文件中的全部内容:
Dreamstill::Application.routes.draw do
root :to => "videos#new"
end
your routes should be 你的路线应该是
Dreamstill::Application.routes.draw do
root :to => "videos#new"
resources :videos
end
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.