ruby-on-rails - رسبك:مواصفات وحدة تحكم لمستوى متداخلة بمستوى 2





rspec controller (2)


يتطلب مسارك معرفين على الأقل: المقالة الرئيسية للتعليق والصفحة الرئيسية للمقالة.

namespace :magazine do
  resources :pages do
    resources :articles do
      resources :comments
    end
  end
end

# => /magazine/pages/:page_id/articles/:article_id/comments

يجب توفير جميع معرفات الوالد لهذا المسار للعمل:

it "renders the :index view" do
  get :index, {:page_id => @page.id, :article_id => @article.id}
  response.should render_template("index")
end

بلدي rout.rb

  namespace :magazine do
   resources :pages do
     resources :articles do
       resources :comments
     end
   end
  end

أثناء كتابة مواصفات وحدة تحكم التعليقات:

describe "GET 'index'" do
    before(:each) do
     @user = FactoryGirl.create(:user)
     @page = FactoryGirl.build(:page)
     @page.creator = @user
     @page.save
     @article = FactoryGirl.create(:article)
     @comment_attributes = FactoryGirl.attributes_for(:comment, :article_id => @article )
   end
it "populates an array of materials" do
  get :index, ??
  #response.should be_success
  assigns(:comments)
end

it "renders the :index view" do
  get :index, ?? 
  response.should render_template("index")
end

end 

أي فكرة كيفية إعطاء الصفحة والمادة المرجعية للحصول على: مؤشر ؟؟ إذا أعطيت: جيت: إندكس،: article_id => @ article.id
حدث خطأ في ما يلي:

 Failure/Error: get :index, :article_id => @article.id
 ActionController::RoutingError:
   No route matches {:article_id =>"3", :controller=>"magazine/comments"}



احصل على أحدث واكتب:

http://mysite.com?pp=disable

عند الانتهاء اكتب

http://mysite.com?pp=enable

انظر ?pp=help لجميع الخيارات:

Append the following to your query string:

  pp=help : display this screen
  pp=env : display the rack environment
  pp=skip : skip mini profiler for this request
  pp=no-backtrace : don't collect stack traces from all the SQL executed (sticky, use pp=normal-backtrace to enable)
  pp=normal-backtrace (*) : collect stack traces from all the SQL executed and filter normally
  pp=full-backtrace : enable full backtraces for SQL executed (use pp=normal-backtrace to disable) 
  pp=sample : sample stack traces and return a report isolating heavy usage (experimental works best with the stacktrace gem)
  pp=disable : disable profiling for this session 
  pp=enable : enable profiling for this session (if previously disabled)
  pp=profile-gc: perform gc profiling on this request, analyzes ObjectSpace generated by request (ruby 1.9.3 only)
  pp=profile-gc-time: perform built-in gc profiling on this request (ruby 1.9.3 only)






ruby-on-rails rspec controller