2015-11-06 21 views
1

我正在学习cakephp 3,但我很难理解我应该在哪里写代码。我知道这个模型被分成表和实体,但是我怎么知道我的代码应该放在哪里呢?我应该在cakephp 3中写我的模型代码在哪里?

例如,我希望在每次用户编辑他的配置文件时更新数据库中的字段。我想在模型中添加我的代码,因为我的理解是模型应该是“胖”而控制器是“瘦”的。我可以将其添加到我的控制器中,但我觉得我违反了MVC规则。

那么我应该在哪里实施?更重要的是,我怎样才能在模型中正确编码?

感谢

+0

尝试烘焙您的模型,控制器和视图,并查看生成的代码。你可以向他们学习。 http://book.cakephp.org/3.0/en/bake/usage.html – rrd

回答

0

按照Bookmarker教程要做到以下几点:

的src /型号/表/ BookmarksTable.php添加以下内容:

// The $query argument is a query builder instance. 
// The $options array will contain the 'tags' option we passed 
// to find('tagged') in our controller action. 
public function findTagged(Query $query, array $options) 
{ 
    return $this->find() 
     ->distinct(['Bookmarks.id']) 
     ->matching('Tags', function ($q) use ($options) { 
      return $q->where(['Tags.title IN' => $options['tags']]); 
     }); 
} 

所以你需要添加任何“模型”代码到你的表文件中。

相关问题