Также рассмотрите, относится ли какое-либо поведение, которое вы реализуете в действии (контроллер), к модели (или представлению). Если действительно принадлежит действию, просто следуйте советам Гимана и создайте действие для каждого класса, наследуя sfAction
.
Если у меня есть модуль CRUD , основанный на модели (как сгенерировано CLI), и я должен определить дополнительные поведения для этой модели , Я склонен создавать еще один модуль , который будет содержать это поведение. Например, с учетом модели Article
. Я мог бы создать article
модуль для поведения CRUD (сгенерированный), article_support
для дополнительных действий, таких как модерация, активация и т. Д. И, возможно, article_ajax
для асинхронных запросов.