"TypeError: nil is not a symbol nor a string"对 Ruby on rails GET 请求的响应



帮助!当我在Ruby on Rails应用程序(使用PostgreSQL)上执行简单的GET请求时,我一直收到这个错误:

"status": 500,
"error": "Internal Server Error",
"exception": "#<TypeError: nil is not a symbol nor a string>",
"traces": {
"Application Trace": [
{
"exception_object_id": 26620,
"id": 54,
"trace": "app/controllers/recipes_controller.rb:4:in `index'"
}
],

它适用于我的UsersGET请求,但不适用于RecipesGET请求。以下是我的食谱资源的更多信息:

配方模式:

create_table "recipes", force: :cascade do |t|
t.string "title"
t.string "image"
t.string "link"
t.string "cuisine"
t.string "ingredients"
t.string "date"
t.boolean "favorite"
t.boolean "try"
t.boolean "made"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
end

配方控制器:

class RecipesController < ApplicationController
def index
render json: Recipe.all, status: :ok
end
end

配方序列化程序:

class RecipeSerializer < ActiveModel::Serializer
attributes :id, :title, :image, :link, :cuisine, :ingredients, :date, :favorite, :try, :made
end

路线:

Rails.application.routes.draw do
resources :recipes
resources :users
end

这很奇怪,因为我已经做了几个类似的项目,它们使用了几乎相同的后端格式/数据,只是这个特定的项目不起作用。我对软件工程还是相当陌生的,所以任何帮助都很感激。非常感谢。

我试着研究一下这可能是一个布尔问题,但并不完全确定。

它可能是名为:try的布尔字段

可以尝试更长的名称,例如

is_favorite
wants_to_try / has_tried 
has_made

相关内容

  • 没有找到相关文章