這是我的崗位控制器衝突之間的兩個
before_action :seo_url,only: [:show]
def product_list
if params[:product_id] == 1
@products = Product.All
end
respond_to do |format|
format.json { render json: @products.id }
end
end
private
def seo_url
@post = Post.friendly.find params[:id]
end
這裏是我的Ajax調用
$.ajax({
type: "GET",
url: '/posts/product_list.json',
data: {product_id: 1},
dataType: 'json'
});
我的控制檯拋出這樣的事情。我無法理解發生了什麼誰能幫助
Parameters: {"product_id"=>"1", "_"=>"1380659219433", "id"=>"product_list"}
Post Load (0.9ms) SELECT "posts".* FROM "posts" WHERE "posts"."slug" = 'product_list' ORDER BY "posts"."id" ASC LIMIT 1
Completed 404 Not Found in 5ms
ActiveRecord::RecordNotFound (ActiveRecord::RecordNotFound):
app/controllers/posts_controller.rb:85:in `seo_url'
編輯-1
Processing by PostsController#product_list as JSON
Parameters: {"product_id"=>"1"}
Completed 500 Internal Server Error in 3ms
NoMethodError (undefined method `id' for nil:NilClass):
你的'config/routes.rb'是什麼樣的?發佈,我們可以找出爲什麼你會得到「id」=>「product_list」 –
你應該直接使用jQuery的方法'$ .getJSON(url,data)'http://api.jquery.com/jQuery。 getJSON/ – MrYoshiji