Php 显示用户';帖子视图中的用户名,带有相关注释
我是CakePHP1.3的新手。。。我想显示或显示用户的用户名而不是用户的id,用户在post视图中发布评论。。。有人能帮我吗 以下是我创建的模型关联:Php 显示用户';帖子视图中的用户名,带有相关注释,php,cakephp,cakephp-1.3,containable,Php,Cakephp,Cakephp 1.3,Containable,我是CakePHP1.3的新手。。。我想显示或显示用户的用户名而不是用户的id,用户在post视图中发布评论。。。有人能帮我吗 以下是我创建的模型关联: 帖子有很多评论 评论“属于”用户 发布->评论->用户 我已经阅读了CakePHP1.3的可包含行为,但仍然不能很好地理解它。。。请帮助我在post_控制器的view&view.ctp中放置哪些代码,这些代码可以在post视图中显示相关的表 以及如何在POST视图中调用用户的数据 我还是很困惑 提前感谢,Azure我假设您正在comments表
提前感谢,Azure我假设您正在comments表中保存用户id,并且用户名位于发布评论的users表中,然后使用以下解决方案 在控制器方法中:
$userdata=$this->User->find('all',array('fields'=>array('id','username'),'recursive'=>-1));
$userid=Set::extract('/User/id', $userdata);
$username=Set::extract('/User/username', $userdata);
$data=array_combine($username,$userid);
$this->set('name',$data);
鉴于:
$cid=$var['Comment']['user_id'];
$username=array_search($cid, $name);
echo $username;
假设 你有三张桌子,如下所示
(1) Posts
* id
* title
(2) Comments
* id
* post_id
* user_id
(3) Users
* id
* name
查看PostsController.php文件中的函数
public function view($id) {
if (!$id) {
throw new NotFoundException(__('Invalid post'));
}
$this->Post->recursive=2;
$post = $this->Post->findById($id);
if (!$post) {
throw new NotFoundException(__('Invalid post'));
}
$this->set('post', $post);
}
app/view/Posts/folder中view.ctp文件的内容
<!-- File: /app/View/Posts/view.ctp -->
<h1><?php echo 'Post ID : '.h($post['Post']['id']); ?></h1>
<h1><?php echo 'Post Title : '.h($post['Post']['title']); ?></h1>
<?php
echo 'Comments By Users : ';
if(!empty($post['Comment'])){
foreach ($post['Comment'] as $key=>$value){?>
<p>User Name : <?php echo $value['User']['name'];?></p>
<?php }
}
else {
echo '<br/>';
echo 'No Comments Yet';
} ?>
用户名:
模型文件:User.php
<?php
class User extends AppModel {
public $hasMany = array(
'Comment' => array(
'className' => 'Comment',
)
);
}
?>
<?php
class Comment extends AppModel {
public $belongsTo = array(
'User' => array(
'className' => 'User',
'foreignKey' => 'user_id'
)
);
}
?>
<?php
class Post extends AppModel {
public $hasMany = array(
'Comment' => array(
'className' => 'Comment',
)
);
}
?>
模型文件:Comment.php
<?php
class User extends AppModel {
public $hasMany = array(
'Comment' => array(
'className' => 'Comment',
)
);
}
?>
<?php
class Comment extends AppModel {
public $belongsTo = array(
'User' => array(
'className' => 'User',
'foreignKey' => 'user_id'
)
);
}
?>
<?php
class Post extends AppModel {
public $hasMany = array(
'Comment' => array(
'className' => 'Comment',
)
);
}
?>
模型文件:Post.php
<?php
class User extends AppModel {
public $hasMany = array(
'Comment' => array(
'className' => 'Comment',
)
);
}
?>
<?php
class Comment extends AppModel {
public $belongsTo = array(
'User' => array(
'className' => 'User',
'foreignKey' => 'user_id'
)
);
}
?>
<?php
class Post extends AppModel {
public $hasMany = array(
'Comment' => array(
'className' => 'Comment',
)
);
}
?>
请帮我解决这个问题!:{非常感谢凯文!这些代码帮了我很大的忙。:D谢谢你花时间来解决我的问题,阿什……我很感激。:D