Rails模型的位置有两个单词

时间:2016-03-17 08:39:20

标签: ruby-on-rails ruby rest

我在Ruby on rails上做了一个API后端。

我有一个模型,称之为TestModel。当用户创建此方法的新记录时,我想返回一个location标题,其中包含新创建的对象的URL(即用户可以使用GET访问它的位置),所以我尝试

render json: @test_model, status: :created, location: @test_model

不幸的是,rails无法给我这个位置,因为他似乎试图调用一个方法test_model_url,其中rails似乎被解释为对象model的URL作为一个子对象项目test

我该如何正确地做到这一点?

1 个答案:

答案 0 :(得分:0)

这与模型命名无关,但更多的是关于ruby on rails如何按照惯例工作。比照rails guide on routing(特别是第2.3部分)

  

这些助手中的每一个都有一个相应的_url助手(例如photos_url),它返回前缀为当前主机,端口和路径前缀的相同路径。

- >你必须正确设置路线,然后_url和_path助手才能正常工作。

您还应该坚持使用rails naming conventions,因此您的模型应该命名为TestModel,而不是testModel