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に移動します!私はそれが何かクレイジーシンプルな私は行方不明だと確信しています...
素晴らしいです。それはうまくいった。しかし、過去に私はユーザーに「match」/「signup」のような名前付きルートを設定させるだけでした:to => 'users#new'これは完全なリソースで可能ですか? 3.1の新機能? – Rapture
でもこれを行うことができますが、少なくとも2つのルートが必要です。新しいアクションと作成するルートです。 – fl00r
実際、これはバグだと思われます。なぜなら、 'resource:user'(単数形)を持っていると動作しないからです。 –