ruby-on-rails - rails : ruby class name must base on file name?

标签 ruby-on-rails ruby rspec ruby-grape

我正在学习 rails 5.0。学习Ruby的时候,我知道ruby的文件名可以和里面的类名不同。但是当我转向 rails 时,我看到 ruby​​ 文件名和类名必须具有相同的格式。例如,类名 CheckInDetail 将在 check_in_detail.ruby 中。我还看到模块名称必须与目录名称匹配。例如,模块 authentication 必须位于 authentication 目录中。我的结论的一些例子是:

  1. rspec: 类名必须基于文件名。
  2. grape: 类名必须基于文件名。模块名称必须与目录匹配。

如果我不遵循这些约定,编译 Rails 时会抛出异常。我在那些图书馆的 github 页面上看不到这些约定。对于所有图书馆的整个铁路项目,这是否适用?

最佳答案

对于如何定义类和文件名,Rails 有一个约定。名为 ManageOrder 的类应该驻留在名为 manage_order.rb 的文件中。这是 Rails 遵循的标准约定,否则 Rails 将无法加载该类。

关于ruby-on-rails - rails : ruby class name must base on file name?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38810857/

相关文章:

ruby-on-rails - Heroku 的开发流程?

ruby-on-rails - RSpec: Controller 规范的多个断言

ruby-on-rails - ActionController::RoutingError(类的未定义方法 `before_filter'):错误

ruby-on-rails - 如何使固定装置在 Rails 的测试中可更新?

javascript - Rails 4 Ajax 类按钮无法正常工作

javascript - Js 无法读取 Rails 表单上输入的属性

ruby - 验证两列的唯一性

ruby-on-rails - 在 Rails 模型中重新定义 gem 方法不起作用

ruby-on-rails - RSpec - WrongScopeError : expect is not available on an example group

ruby - 带有循环的 Chefspec 测试资源