On Oct 10, 2012, at 7:20 AM, Remi B. wrote:

> --------------------
> Stating the problem:
> --------------------
> When trying to save my authentication that is related to my customer,
> there is thrown a ActiveRecord:RecordNotSaved error!
> 
> --------------------
> My code:
> --------------------
> 
> Database:
> *********
> 
> table customers
> table authentications
> 
> A Customer has_one :authentication
> 
> This is the look of my Customer model:
> **************************************
> class Customer < ActiveRecord::Base
>  attr_accessible :id, :name, :email, :address_1, :address_2, :zipcode,
> :city, :currency, :country_id, :contact_person_id
> 
>  has_one :authentication
> end
> 
> This is the look of my Authentication:
> **************************************
> class Authentication < ActiveRecord::Base
>  attr_accessible :current_login_at, :customer_id, :failed_login_count,
> :last_login_at, :login, :login_count, :password
> 
>  validates :customer_id, :presence => true, :uniqueness => true
>  validates :password, :presence => true, :length => {:minimum => 5,
> :maximum => 20}
>  validates_confirmation_of :password, :on => :update
> 
>  belongs_to :customer
> end
> 
> This is the look of my CustomersController:
> *******************************************
> #Make an authentication
>          authentication = Authentication.new
>          authentication.login = (@dbCustomer.id.to_s <<
> @dbCustomer.zipcode.to_s).delete(' ')
> 
>          #Create random password, add it to the authentication
>          randPassword = RandomPasswordGenerator.generate(8,
> :skip_symbols => true)
>          authentication.password = Password.create(randPassword)
> 
>          #Add the counts
>          authentication.login_count = 0
>          authentication.failed_login_count = 0
> 
>          #Add the customer ID
>          authentication.customer_id = @dbCustomer.id
> 
>          if @dbCustomer.authentication = authentication ---> LINE 49
> 
> --------------------
> The exact error:
> --------------------
> 
> ActiveRecord::RecordNotSaved in CustomersController#create
> 
> Failed to save the new associated authentication.
> 
> 
> Error in:
> 
> app/controllers/customers_controller.rb:49:in `create'

What does this line say? (We don't see line numbers in the code you posted 
here.) What happens if you change save to save! near here, so that any errors 
are flagged immediately? An invalid record will not save, so what are the 
errors on that object?

Walter

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to