Phiên bản tiêu tan là dành cho phần mở rộng trên các khuôn khổ khác, như rspec-rails
và gạch dưới là dành cho một phần của tên viên ngọc bình thường và cần được camelcased trong lớp học của bạn.
Vì vậy, nếu bạn có đá quý có tên foo_bar
, lớp/mô-đun phải có tên FooBar
. Nếu viên đá quý đó cần có phần mở rộng đường ray, nó sẽ được gọi là foo_bar-rails
và mô-đun sẽ được gọi là FooBar::Rails
và cần được yêu cầu là require "foo_bar/rails"
Quy ước này cũng là điều mà Bundler cố gắng yêu cầu.
Phải thừa nhận rằng, quy ước này không phải lúc nào cũng tuân theo. jquery_rails
thực sự phải là jquery-rails
và factory_girl_rails
nên được gọi là factory_girl-rails
. Nhưng này, không phải mọi thứ đều hoàn hảo.
RubyGems docs ước:
có thể trùng lặp của [Có nên sử dụng dấu gạch ngang hoặc dấu gạch dưới khi đặt tên cho một đá quý có nhiều hơn một từ không?] (Http://stackoverflow.com/questions/4687659/should-one-use-dashes-or-underscores- Khi đặt tên-một-đá-với-nhiều hơn một từ) –