Symfony:我应该在哪里将业务逻辑放在模型中?

时间:2012-11-08 09:51:28

标签: php doctrine symfony-1.4

假设我有这个模型

  • User.class.php
  • userTable.class.php

我想创建一个更新用户的方法

动作

class userActions extends sfActions {

public function executeUpdateUser(sfWebRequest $request) {
     $user_id = $request->getParameter('id');
     // here i want to call function to update the user 
     // updateUser($id);
}

我应该在哪里放置此功能updateUser($id)

ON user.class.php - >并称之为User::updateUser($id);

OR ON userTable.class.php - >并称之为Doctrine_Core::getTable('User')->updateUser($id);

1 个答案:

答案 0 :(得分:0)

我这样做:

$user = Doctrine_Core::getTable('User')->find($user_id);
$user->updateWithData($data); // ::update() is already an existing method
$user->save();

$user = Doctrine_Core::getTable('User')->find($user_id);
$user->updateWithDataAndSave($data);