Я хочу, чтобы мой код был аккуратным и соблюдал лучшие практики среди разработчиков rails, которые приводят меня к этому вопросу. Скажем, например, у меня есть следующие типы метод для моей моделиОбщий метод заказа для моделей Rails
- Модель ассоциации
- Validations
- прицелы
- Callbacks
- Другие пользовательские методы
Что такое обычный порядок что вышло выше? Пожалуйста, не стесняйтесь добавлять любые другие, которые я, возможно, забыл.
Бонус: Следует ли группировать переменные вместе со связанными с ними типами методов или все переменные должны быть сгруппированы в начале модели? Предположим, у меня была переменная для хранения регулярного выражения. Лучше ли держать его близко к проверке (-ам) или в верхней части модели, аналогичной тому, где вы будете хранить глобальные переменные?
Пример:
VALID_EMAIL_REGEX = /\A[\w+\-.][email protected][a-z\d\-.]+\.[a-z]+\z/i
validates :email, uniqueness: true, length: {within: 5..50}, format: { with: VALID_EMAIL_REGEX }
Не уверен, что это лучшие практики, но то, что вы описываете, - это в значительной степени то, что я делаю. Если вы переместите свое регулярное выражение по электронной почте до тех пор, пока после проверки, я думаю, вы обнаружите, что это не сработает. –
Да, я плохой. Я имел в виду либо близко, либо наверху. –
Связанные записи: https://github.com/bbatsov/rails-style-guide#models и http://rails-bestpractices.com/posts/75-keep-code-struture-in-models-consistent –