Какое соглашение следует размещать, называть и загружать модули моделей? - PullRequest
0 голосов
/ 13 ноября 2011

В настоящее время я делаю следующее:

app/models/
  user.rb
  finders/user_finders.rb
  attributes/user_attributes.rb
  validations/user_validations.rb

И так для многих "больших" моделей.

И затем, чтобы загрузить их, я делаю следующее:

В app/models/user.rb

load 'attributes/user_attributes.rb'
load 'finders/user_finders.rb'
load 'validations/user_validations.rb'

User_ {stuff} .rb просто заново откройте класс User.

Но проблема в том, что мой user_ {stuff} загружается дважды во время производства или тестирования (но не разработки), и это нарушает некоторые вещи с помощью псевдонимов.

Какой Rails-способ достижения этого?

1 Ответ

0 голосов
/ 13 ноября 2011

Я использую concerned_with, чтобы справиться с этой ситуацией - см. здесь - но есть проблемы с такими действиями - см. Комментарии в конце статьи и этот фрагмент ,Без сомнения, лучшим решением является разработка вашего приложения, чтобы модели не становились слишком большими - но, очевидно, это не всегда так, как все получается, именно поэтому я в конечном итоге и использовал его.

...