问题标签 [grape-entity]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
488 浏览

ruby-on-rails - Grape Rails RSpec 测试返回 400

我正在尝试测试我的 Grape API,但我在测试中收到 400 错误,但是当我运行测试应该测试的操作时,我得到了预期的 201 HTTP 响应。不知道这里发生了什么。下面是具体的 RSpec 测试,但您可以在 GitHub 上的hackcentral/hackcentral查看整个项目以及工厂和实际的 Grape API 。下面的测试是测试 Alpha::Applications 上的 POST 创建操作。(app/api/alpha/applications.rb)

0 投票
1 回答
869 浏览

ruby-on-rails - 在 Rails 4 中通过 Grape Entity 呈现 `belongs_to` 关联

鉴于这两个模型:

我需要将实体呈现为包含它们的关联的 json,因此:

这工作正常:

虽然这不是:

它给了我 null on conversation

所以看起来它不适用于 belongs_to 关联。

我需要做什么才能使其工作?

0 投票
1 回答
2879 浏览

ruby-on-rails - Rails,葡萄实体。有条件暴露

我创建了葡萄实体:

:health如果电流:type等于 ,我想公开basis。我尝试通过这种方法访问它:

Health属性未显示在我创建的 json 中。我以为我可以使用expose :health, if: :health,它也不起作用。我做错了什么???

0 投票
2 回答
5479 浏览

ruby-on-rails - 葡萄:葡萄实体的必需参数

我正在用grape编写一个API服务器,我选择使用grape-entity,因为它能够自动生成swagger的文档。但是现在当我根据需要设置参数时我遇到了问题。因为葡萄不验证参数是否存在。看起来葡萄忽略了required: true实体的参数。

应用程序.rb

os_entity.rb

app_entity.rb

现在其他一切都很好,但我不知道如何以 DRY 方式使用实体,并使葡萄验证参数的要求。

0 投票
1 回答
329 浏览

ruby - 两个文件在 ruby​​ 中相互需要

我正在用 Ruby 和 Grape 构建一个 Web API。我有两个相互需要的类,这会导致出现未初始化的常量类错误的情况。我得到错误的地方是在连接器的实体类中,请参见下面的示例代码,它需要 Card::Entity 在初始化之前。有没有办法在不将实体定义移动到另一个文件的情况下解决这个问题?

0 投票
1 回答
1299 浏览

ruby-on-rails - 葡萄实体代表不工作

我正在使用grapegemAPIgrape-entity生成响应。

简单show/get的请求响应很好,就像只从ActiveRecord Object. 美好的

当我尝试包含has_many关系中的数据时,它会返回与该对象相关的所有数据。美好的

但是当我represent喜欢数据时

根据文档,它应该返回如下内容:

它返回:

我的PostEntities包含:

我的CommentEntities包含:

方法有问题represent。我不明白问题是什么?

0 投票
1 回答
506 浏览

ruby-on-rails - 葡萄'文本'类型参数

我的数据库中有一个列类型TEXT。我应该在我的 API 中声明什么类型的参数?

上面的代码产生了这个error: uninitialized constant API::Articles::Text (NameError)

我尝试将参数设置为type: String,但我的测试以ArgumentError.

0 投票
0 回答
708 浏览

ruby-on-rails - 如何使用葡萄实体公开关联记录

嗨,我有一个模型Event,这个活动有一个Setting。例如

我的事件实体看起来像

我的EventSettingEntity课看起来像

我的 Api 就像

但主要问题是事件创建表单没有显示settingtype字段。请帮我解决问题。谢谢

0 投票
1 回答
790 浏览

ruby-on-rails - 如何动态更改葡萄 API 中的格式化程序?

我的 API 有时会以 CSV 格式返回数据。但是根据返回的数据,CSV 格式化程序的行为会有所不同(作为分层数据,应该根据数据按照特定规则展平)所以我编写了许多自定义 CSV 格式化程序。但我发现我无法动态更改格式化程序:

我正在使用并想要使用Grape::Entities,API 应该能够将数据公开为 json、xml 和 csv。

我试过了 :

但它失败了,因为在这种情况下格式化程序不是定义的方法。

我试过了 :

但仅CustomOtherCsvFormatter适用于所有方法。最后一个格式化程序替换先前定义的。

有没有办法动态更改格式化程序?

你有没有看到其他方法来做我想做的事?:根据 API 方法使用自定义格式化程序输出葡萄实体。

0 投票
1 回答
138 浏览

json - 如何将 Rails Grape API 与 Ember 自反模型连接起来

我在将来自 Grape(使用 Grape 实体序列化)的 Json 有效负载与 Ember 反身模型连接时遇到问题。模型如下所示:

如您所见,我正在尝试在这里建模类别-子类别关系。来自端点的示例 json 响应是:

有警告信息:

正如它在 ActiveModelAdapter 的文档中所说,它应该为嵌套资源提供 id,为带有侧载数据的父资源提供 id。问题是 ember 检查器中只有一个类别记录,但没有相关子项。

我还尝试制作两个模型:类别和子类别,并提供具有其他 ids/id 命名的相同有效负载,我可以看到在这种情况下,所有必需的子类别记录,但不像类别的 hasMany (两个单独的数据)。