【问题标题】:Is it bad practice to name a model "Image" in Rails 4?在 Rails 4 中将模型命名为“图像”是不好的做法吗?
【发布时间】:2015-06-09 04:34:31
【问题描述】:

在我的 Rails 4 应用程序中,我有一个名为 Image 的模型。据我从此处列出的保留字列表中可以看出,Image 不是 Rails 4 中的保留字: http://www.rubymagic.org/posts/ruby-and-rails-reserved-words

我遇到的问题是图像类的路由创建了一个名为image_path 的助手,它恰好已经是图像的资产助手。例如,要在我的一个单元测试中访问路径帮助程序,我需要调用Rails.application.routes.url_helpers.image_path(@image),这很容易忘记并且很难让外人调试。

我倾向于将模型重命名为 Photo,但首先想看看是否有人有其他解决方案。

【问题讨论】:

标签: ruby-on-rails ruby-on-rails-4


【解决方案1】:

命名您的模型图像完全没有问题,但您将面临一些问题,因为资源控制器名为 ImagesController,因为您将覆盖 URLHelpers image_path 方法。

我认为不建议这样做,但如果你愿意,你可以这样做。要解决路由问题,您可以简单地为您的图像控制器命名,如下所示:

# config/routes.rb
resource :images, as: :photo # or whatever you want to

【讨论】:

    猜你喜欢
    • 2016-03-11
    • 1970-01-01
    • 1970-01-01
    • 2011-06-30
    • 1970-01-01
    • 2016-03-02
    • 2020-05-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多