私は現在、メールアドレスを受け取り、それをランディングページの一部としてデータベースに入れる単純なフォームを作成しようとしています. フォームはオンhome.html.erb
で、コントローラーによって制御されpages
ます。
次のエラーが表示されます。
{:locale=>[:en], :formats=>[:html], :handlers=>[:erb, :builder, :coffee]} を使用したテンプレートのサインアップ/作成、アプリケーション/作成がありません。検索場所: * "/Users/me/rails_projects/this_project/app/views"
これが私のコードです:
home.html.erb
もっている:
<%= form_for(@signup) do |f| %>
<div class="field">
<%= f.text_field :email %>
</div>
<div class="actions">
<%= f.submit "Sign up" %>
</div>
<% end %>
Pages
コントローラーには次のものがあります。
class PagesController < ApplicationController
def home
@title = "Title of my site"
@signup = Signup.new
end
end
Signups
コントローラーには次のものがあります。
class SignupController < ApplicationController
def show
@signup = Signup.new
end
def new
end
def create
@signup = Signup.new(params[:signup])
if @signup.save
else
render 'new'
end
end
end
Signup
モデルには次のものがあります。
class Signup < ActiveRecord::Base
attr_accessible :email
email_regex = /\A[\w+\-.]+@[a-z\d\-.]+\.[a-z]+\z/i
validates(:email, :presence => true,
:length => {:maximum => 40},
:format => {:with => email_regex})
end
何が問題なのかわかりませんが、フィールドに有効な電子メール アドレスを入力すると、このエラーが表示されます。私は無駄にグーグルで検索しました。どうぞよろしくお願いいたします。