Missing Template Error When Calling Render
The error
ForumsController create should work for plist
Failure/Error: post :create, :name => "My New Shiny Forum", :format => 'plist'
Missing template forums/create with {:formats=>[:plist], :handlers=>[:builder, :rhtml, :rxml, :erb, :rjs], :locale=>[:en, :en]} in view paths "/Users/maletor/Sites/3md/app/views", ..."
# ./app/controllers/forums_controller.rb:64:in `create'
# ./app/controllers/forums_controller.rb:61:in `create'
# ./app/controllers/forums_controller.rb:52:in `create'
# ./spec/controllers/forums_controller_spec.rb:222
./spec/controllers/forums_controller_spec.rb:222
post :create, :name => "My New Shiny Forum", :format => 'plist'
./app/controllers/forums_controller.rb#create
def create
Forum.transaction do
if Forum.find_by_name(params[:name])
head :conflict
return
end
group = Group.create!(:name => params[:name])
forum = Forum.create!(:name => params[:name])
respond_to do |format|
Rails.logger.debug "FORUM: #{forum.inspect}"
format.json { render :json => forum,开发者_C百科 :status => 201 }
format.plist { render :plist => forum, :status => 201 }
end
end
end
Do not cover any code in controller into transaction, it uses on Model layer by conventions. You can create the group on a callback after_create in Forum model
精彩评论