gpt4 book ai didi

php - 蛋糕php, undefined variable 问题

转载 作者:行者123 更新时间:2023-12-04 06:21:01 25 4
gpt4 key购买 nike

我有一个这样的 Controller 页面:

class UsersController extends AppController {
var $helpers = array ('Html','Form');
var $name = 'Users';

function index() {
$this->set('view_users', $this->User->find('all'));
}
}

然后我有另一个这样的 Controller 页面:
    class PostsController extends AppController {
var $helpers = array ('Html','Form');
var $name = 'Posts';

function index() {
$this->set('edit_users', $this->Post->find('all'));
}
}

然后我有索引文件:
<?php foreach($view_users as $value): ?>
<p>id - <?php echo $value['User']['first']; ?></p>
<?php endforeach; ?>

<?php foreach($edit_users as $value): ?>
<p>id - <?php echo $value['Post']['first']; ?></p>
<?php endforeach; ?>

我得到的问题是: Notice (8): Undefined variable: view_users [APP\views\posts\index.ctp, line 6]
很奇怪自从 edit_users var 工作。

可能是什么问题?
谢谢

最佳答案

UsersControllerPostsController是不同的 Controller 。他们使用不同的 View ,即使他们都有一个 index action,它们被分别调用并使用不同的 View 。

当你去/users/index ,它调用 index UsersController的 Action 这设置了 $view_users多变的。

当你去/posts/index ,它调用 index PostsController的 Action 这设置了 $edit_users .

问题:PostsController login操作未为 $view_users 设置值所以变量是未定义的。假设您Post型号与User有关系模型,您应该能够将其添加到 PostsController index解决您的问题的行动:

$this->set('view_users', $this->Post->User->find('all'));

或者,您可以更改 View 以使用 empty检查变量是否首先设置:
if ( ! empty($view_users) )
foreach ( $view_users as view_user )
{
// Do something useful.
}

关于php - 蛋糕php, undefined variable 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6566343/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com