Ruby on Rails Tuesday, July 3, 2012

subjects has many pages
subject controller code::

class SubjectController < ApplicationController

def list
@subjects = Subject.order("subjects.position ASC")
end

def show
@subject = Subject.find(params[:id])
end

def new
@subject = Subject.new(:visible => 'false')
@subject_count = Subject.count + 1
end

def create 
@subject = Subject.new(params[:subject])
if @subject.save
redirect_to(:action => 'list')
else
render('new')
end
end
end
 

page controller code::

class PageController < ApplicationController

    before_filter :find_subject
  
  def index
    list
    render('list')
  end
  
  def list
    @pages = Page.where(:subject_id => @subject.id)
  end
  
  def show
    @page = Page.find(params[:id])
  end
  
  def new
    @page = Page.new(:subject_id => @subject.id)
    @page_count = @subject.pages.size + 1
    @subjects = Subject.order('position ASC')
  end
  
  def create
    @page = Page.new(params[:page])
    if @page.save
      redirect_to(:action => 'list', :subject_id => @page.subject_id)
    else
      render('new')
    end
  end
  
  private
  
  def find_subject
    if params[:subject_id]
      @subject = Subject.find_by_id(params[:subject_id])
    end
  end
    
end

this is my controller code and when m creating new page m getting dat error...

--
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 rubyonrails-talk@googlegroups.com.
To unsubscribe from this group, send email to rubyonrails-talk+unsubscribe@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en-US.

No comments:

Post a Comment