Комментарии 20
>Чтобы создать что-нибудь в RoR, нужно идти в командную строку
Смущает слово «нужно»? А ручками создать файлы нельзя?
Смущает слово «нужно»? А ручками создать файлы нельзя?
0
Эмм… Здесь я имел в виду что-то серьезное :) вроде контроллера, модели. Сейчас поправлю
0
Ну да, файл контроллера из 5-ти строк или вида из двух это очень серьезно и практически невозможно создать ручками :)
0
Да тут дело скорей не в том что сложно, но зачем, если есть полуавтоматические средства? А ручками все потом надо подкрутить и радоваться, что генераторы избавили от ненужной рутины :)
0
> А ручками создать файлы нельзя?
Правило Генерации: «Избегайте ручного ввода кода, при любом удобном случае пишите программы, которые бы писали программы.» (С) «Философия UNIX».
Правило Генерации: «Избегайте ручного ввода кода, при любом удобном случае пишите программы, которые бы писали программы.» (С) «Философия UNIX».
+2
controllers: интерфейс и деловая логика
Меня что-то смущает эта сторчка. Деловая логика вроде бы должна в большинстве своём содержаться в модели, а интерфейс (если вы имеете в виду интерфейс пользователя) — в представлении.
0
бизнес-логика всегда в контроллере, что вас смущает? Работа с данными в модели. Интерфейс наверное имелся ввиду не пользовательский, а интерфейс доступа к данным, я так понимаю.
0
Бизнес-логика в контроллере — это в корне неверный подход. Разделение: модель — данные, контроллер — логика работы с ними — это заблуждение, сформированное некоторыми туториалами по популярным фреймворкам, в которых такое разделение введено только лишь для простоты объяснения механизма MVC. На самом деле вся бизнес-логика должна размещаться в слое домена (то есть предметной области). Именно объектами этого слоя и манипулируют контроллеры, выполняя второстепенные сервисные действия, такие как создание, поиск и удаление объектов домена, авторизация и проверка данных (это спорно, очень многие относят это тоже к домену). Вообще, чем меньше кода в контроллерах тем лучше. Вся логика должны быть в объектах предметной области. Именно этот слой должен взаимодействовать с моделью данных путём делегирования либо, вообще, сливаться с ней полностью или частично, объединяя логику и механизмы персистивности (Active record).
+1
Ух ты как круто, а где об этом можно в подробностях почитать?
0
Не совсем с вами согласен, все зависит от задачи.
+2
Ну когда же продолжение?
0
Моя мама говорит, что любое дело надо доводить до конца :) Я Вас морально поддерживаю и даже смог бы предложить посильную помощь. Например, соавторство.
0
Ну так будет продолжение или нет? :)
0
для этого мы добавили ruby в начале команды
Это нужно только в Windows.
Продолжай! Интересно читать.
Для новичков будет лучшим руководством.
0
Давно добавил все статьи в избранное и жду продолжения!
0
Код во View типа:
<% 5.times do%>
<%= @message %>
<% end %>
— плохая практика.
<% 5.times do%>
<%= @message %>
<% end %>
— плохая практика.
0
Надеюсь, что продолжение всё же будет.
Автору отписал в л.с. вопрос о судьбе серий.
Автору отписал в л.с. вопрос о судьбе серий.
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Ruby on Rails шаг за шагом. #3 Контроллер и Вид