Я использую шаблон MVC в проекте PHP CodeIgniter, и мне интересно, как лучше всего создавать методы моделей, чтобы обеспечить читаемость кода и масштабируемость.PHP-модели: один или несколько сеттеров по действию базы данных?
Одним словом, лучше ли это сделать? :
public function set_account_state($new_state) {
// UPDATE a database record state to $new_state [0, 1 or 2]
}
Или это? :
public function reject_account() {
// UPDATE a database record state to 0
}
public function accept_account() {
// UPDATE a database record state to 1
}
public function pending_account() {
// UPDATE a database record state to 2
}
Или, может быть, другой способ?
Кроме того, есть ли хорошая практика для обозначения функций в таких случаях?
Я согласен с этим ответом. Управление государственными счетами находится в одном месте, как и должно быть. Допустимые значения для '$ state' могут обслуживаться константами, тем самым улучшая читаемость и понимание того, какие значения аргументов должны быть/должны быть. Это не означает, что вы не можете или не должны создавать частные или защищенные «вспомогательные» функции в классе для обработки каждого конкретного состояния. Но публичный интерфейс должен быть одной функцией. – DFriend