prabu

Joined

50 Experience
0 Lessons Completed
0 Questions Solved

Activity

Hi Everone,
i am trying to create one to one relationship with ruby on rails5.

  1. I ahve created the Dubject model in the below format class Subject < ApplicationRecord has_one :page
    scope :visible, lambda { where(:visible => true) } scope :invisible, lambda { where(:visible => false) } scope :sortedASC, lambda {order ("position ASC")} scope :sortedDESC, lambda {order ("position DESC")} scope :newest_first, lambda {order ("created_at DESC")} scope :search, lambda {|query| where(["name LIKE ?", "%#{query}%"])} end
    1. I have created the page model in the below format.

class Page < ApplicationRecord
belongs_to :subject
end

I am able to save the subject record. When i create the page object for page model and assigning to the subject. i am getting the below error.

  1. subject=Subject.find(5)!

Adding new recrord to the page table and assingning the object referrence to Subject model

  1. first_page=Page.new(:name=>"First page", :permalink=> 'first', :position=>1)

  2. subject.page= first_page
    Error message:

(0.5ms) BEGIN
(0.0ms) ROLLBACK
ActiveRecord::RecordNotSaved: Failed to save the new associated page.
from (irb):49

Could any one help me fix this error.

Thanks
Prabu