おそらく信じられないほど愚かなことに行き詰まっていますが、問題が見つかりません。ubuntu マシンで Rails 3.0.3 と ruby 1.9.2 を使用しています。
コントローラーにインスタンス変数を設定し、それを使用して新しいビュー テンプレートにフォームを作成しようとしていますが、ビューではゼロになります。コントローラーに設定されたインスタンス変数がビューにコピーされることになっていることは知っていますが、ここでは nil に設定されています。誰かが私が間違っていることを見ることができますか? これが私のエラーメッセージです:
NoMethodError in Urls#new
undefined method `model_name' for NilClass:Class
Extracted source (around line #1):
1: <%= form_for @url do |f| %>
2: <%= f.submit %>
3: <% end %>
アプリ/コントローラー/urls_controller.rb
class UrlsController < ApplicationController
def new
@url = Url.new
end
end
アプリ/ビュー/urls/new.html.erb
<%= form_for @url do |f| %>
<%= f.submit %>
<% end %>
アプリ/モデル/url.rb
# == Schema Information
# Schema version: 20110122002326
#
# Table name: urls
#
# id :integer not null, primary key
# long_url :text
# short_url :string(255)
# created_at :datetime
# updated_at :datetime
#
class Url < ActiveRecord::Base
end
アプリ/コントローラー/application_controller.rb
class ApplicationController < ActionController::Base
protect_from_forgery
end