У меня есть логин, который после сохранения новый пользователь должен отправить по электронной почте.Это прекрасно работает локально, но на рабочем сервере я продолжаю получать эту ошибку в моих файлах журнала:
ArgumentError (wrong number of arguments (8 for 6)):
app/models/user_observer.rb:3:in `after_save'
/usr/lib64/ruby/1.8/observer.rb:185:in `notify_observers'
/usr/lib64/ruby/1.8/observer.rb:184:in `each'
/usr/lib64/ruby/1.8/observer.rb:184:in `notify_observers'
app/controllers/users_controller.rb:13:in `create'
Мой user_observer:
class UserObserver < ActiveRecord::Observer
def after_save(user)
UserMailer.deliver_welcome_email(user)
end
end
Мой user_mailer:
class UserMailer < ActionMailer::Base
def welcome_email(user)
recipients user.email
from "MilitaryMoveIt <militarymoveit@gmail.com>"
subject "Welcome to My Awesome Site"
sent_on Time.now
body :user => user
end
end
Мой user_controller:
def create
@user = User.new(params[:user])
@user_session = UserSession.new
@user.level = 'Trial'
if @user.save
flash[:notice] = "Account registered!"
redirect_to account_url
else
render :layout => 'user_sessions_new', :template => 'user_sessions/new'
end
end
Я был бы очень признателен любому, кто может пролить немного света на то, что мне здесь не хватает.
Редактировать: Это то, что передается:
Processing UsersController#create (for 184.40.5.17 at 2010-08-06 12:38:23) [POST]
Parameters: {"user"=>{"name"=>"lauren", "password"=>"[FILTERED]", "login"=>"looloobs",
"email"=>"laurenrothlisberger@gmail.com"}, "x"=>"82", "y"=>"14", "action"=>"create",
"authenticity_token"=>"qvQLB9w/pJOWOFzKy6HadbxRieejhQ8Hmry36EAIIwc=", "controller"=>"users"}
Sent mail to laurenrothlisberger@gmail.com
Понятия не имею, что представляют собой параметры X и Y ... это проблема, пытаясь передать их?