cakephp:如何访问另一个没有关联的模型

标签 cakephp cakephp-1.3

我有 3 张 table : projectamenitiesproject_amenities

我只添加项目表格,我想添加新的设施,首先添加到设施表,然后是 project_amenities 表。

所以我定义了这些关系:

项目有很多便利设施

Amenity belongsTo Project

我在 projects_controller 中声明: var $uses = array('Amenity');

这会导致我在此处的添加操作出错

if (!empty($this->data)){

    $this->Project->create();

作为

Notice (8): Undefined property: ProjectsController::$Project 
[APP\controllers\projects_controller.php, line 60]

编辑 另外,我做不到:

$this->Amenity->create();
$insertData = array('name' => $this->data['Project']['Amenity'][$i]['name']);
$this->Amenity->save($insertData);

最佳答案

我不建议使用 $uses = array() ,因为它违背了建立模型关系的目的。此外,它还增加了相当多的开销。

您应该尽可能使用模型关系:

$this->Project->create();
$this->Project->Amenity->create();
$this->Model1->Model2->Model3->Model4->create();

如果你想使用一个不相关的模型,你可以这样做:

$this->loadModel('NewModelName');
$this->NewModelName->action();

查看 http://book.cakephp.org/view/1031/Saving-Your-Datahttp://book.cakephp.org/view/992/loadModel

关于cakephp:如何访问另一个没有关联的模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6678903/

相关文章:

validation - CakePHP的 “baked” date字段验证错误

php - Cakephp 2.0 : array data in controller (from post) is not editable

jquery - TypeError : $(. ..).on 不是函数

checkbox - 复选框中的 cakephp 标签

cakephp - 在 CakePHP 1.3 中为 ownTo 字段提供 NULL 选项的最佳方法是什么?

javascript - jQuery - Ajax 在某些帖子上返回错误 500

cakephp - 编写 wyrihaximus/ratchet 时出错(CakePHP 插件)

cakephp - Cake 网站在将其移动到我的本地主机后找不到图像或 CSS 文件?

php - 如何从PHP和cakephp中的YouTube网址获取视频ID

php - cakephp3测试组件在非对象上调用成员函数on()