gpt4 book ai didi

ruby-on-rails - Rails Controller 在浏览器中呈现 JSON

转载 作者:行者123 更新时间:2023-12-04 06:36:53 25 4
gpt4 key购买 nike

我有一个简单的 Controller ,我可以同时响应 htmljson .我正在使用 json Backbone 应用程序的响应。一切都按预期工作,除了当我单击使用 show 的链接时方法,然后单击返回按钮,index方法只是打印一个大字符串 JSON进入浏览器。如果我刷新,它会按预期显示 HTML。这是 Controller 。

class RecipesController < ApplicationController
def index
@user = User.find(params[:user_id])
@recipes = Recipe.all

respond_to do |format|
format.html
format.json { render json: Recipe.where(user_id: params[:user_id]).featured }
end
end
...
end
我尝试为 response.xhr? 添加支票,并且只渲染 JSON如果它是一个 AJAX 请求,但那没有用。
编辑
这是一个不使用 turbolinks 的 Rails 3 应用程序。
编辑 2
这是相关的主干代码。
# app/assets/javascripts/collections/recipe_list_.js.cofee
@App.Collections.RecipeList = Backbone.Collection.extend
url: ->
"/users/#{@userId}/recipes"
model: window.App.Models.Recipe
initialize: (opts) ->
@userId = opts.userId


# app/assets/javascripts/app.js.coffee
$ ->
urlAry = window.location.href.split('/')
userId = urlAry[urlAry.length - 2]
App = window.App
App.recipeList = new App.Collections.RecipeList(userId: userId)
App.recipeListView = new App.Views.RecipeListView

最佳答案

你可以尝试使用/recipes.html
和/recipes.json
和/recipes/1.html 和/recipes/1.json

而不是依靠主干和历史来始终发送正确的 header

关于ruby-on-rails - Rails Controller 在浏览器中呈现 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26531024/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com