我是靠谱客的博主 欢喜心锁,这篇文章主要介绍分享ThinkPHP3.2中关联查询解决思路,现在分享给大家,希望可以做个参考。

不废话了,直接给大家贴代码了,代码很简单,都是比较常见的sql语句,具体内容请看下文。

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
CREATE TABLE `test_avatar` ( `uid` int(11) unsigned NOT NULL DEFAULT '0', `avatar` varchar(255) NOT NULL DEFAULT '', PRIMARY KEY (`uid`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; INSERT INTO `test_avatar` VALUES (1,'./Uploads/admin.jpg'); CREATE TABLE `test_pro` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `uid` int(11) unsigned NOT NULL DEFAULT '0', `name` varchar(255) NOT NULL DEFAULT '', PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; INSERT INTO `test_pro` VALUES (1,1,'产品1'),(2,1,'产品2'); CREATE TABLE `test_user` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `username` varchar(50) NOT NULL DEFAULT '', `tel` int(11) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; INSERT INTO `test_user` VALUES (1,'admin',110);

如上三个表:用户头像表、产品表、用户表

怎样在模型中建立关联?

复制代码
1
2
3
4
5
6
7
8
9
10
11
class ProModel extends RelationModel{ protected $_link=array( 'Avatar'=>array( 'mapping_type'=>self::HAS_ONE, 'class_name'=>'Avatar', 'foreign_key'=>'uid', 'mapping_fields'=>'avatar', 'as_fields'=>'avatar', ), ) }

试过用HAS_ONE、BELONGS_TO、HAS_MANY、MANY_TO_MANY都不行,求大神指点

------解决思路----------------------

Model下建立ProModelModel.class.php

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
class ProModelModel extends ViewModel { public $viewFields = array( 'test_avatar'=>array( 'id',... ), 'test_pror'=>array( 'id',... '_on'=>'' ), 'test_pror'=>array( 'id',... '_on'=>'' ), ); }

Thinkphp中SQL语句有关问题及解决办法

请问,在THINKPHP中,数据表里有个字段,字段的内容形式为 {1,2,3,4,5}

那么SQL语句里怎么将获得的ID值来跟字段里的内容来比较呢

------解决思路----------------------

用模糊查询吧

复制代码
1
$where = array('该字段'=>array('LIKE', '%' . $ID . '%'));

最后

以上就是欢喜心锁最近收集整理的关于分享ThinkPHP3.2中关联查询解决思路的全部内容,更多相关分享ThinkPHP3内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(210)

评论列表共有 0 条评论

立即
投稿
返回
顶部