2011-07-15 15 views
0

私はちょうどレール3.1のためのアプリの構築を開始するためのgemsetでrvmを設定しました。シンプルなレール3.1 - エラーが未定義のメソッド `hash_for_users_path '

ユーザーコントローラーとモデルでSTARTを開始しようとしています。ここで私はこれまでやっていることです:

rails g controller users new 


rails generate model user email:string password_digest:string 

/app/controllers/users_controller.rb

class UsersController < ApplicationController 

    def new 
    @user = User.new 
    end 

end 

/app/views/users/new.html.erbを

<h1>Signup</h1> 

<%= form_for @user do |f| %> 
<%= f.label :email %> 
<%= f.text_field :email %> 
<% end %> 

config/routes.rb

WorkOut::Application.routes.draw do 
    get "users/new" 
end 

それだけです。事前に

undefined method `hash_for_users_path' for #<Module:0x00000102ad1058> 
Extracted source (around line #3): 

1: <h1>Signup</h1> 
2: 
3: <%= form_for @user do |f| %> 
4: <%= f.label :email %> 
5: <%= f.text_field :email %> 
6: <% end %> 

ありがとう:私はこのエラーを取得する私はレールにかなり新たなんだ、と私は私が知っているすべてのものを試してみたが、私はレールのサーバを起動するとき、およびhttp://localhost:3000/users/newに移動します!私はそれが何かクレイジーシンプルな私は行方不明だと確信しています...

答えて

3
WorkOut::Application.routes.draw do 
    resources :users 
end 
+0

素晴らしいです。それはうまくいった。しかし、過去に私はユーザーに「match」/「signup」のような名前付きルートを設定させるだけでした:to => 'users#new'これは完全なリソースで可能ですか? 3.1の新機能? – Rapture

+0

でもこれを行うことができますが、少なくとも2つのルートが必要です。新しいアクションと作成するルートです。 – fl00r

+0

実際、これはバグだと思われます。なぜなら、 'resource:user'(単数形)を持っていると動作しないからです。 –