這篇文章主要介紹了ThinkPHP3.2中關聯查詢解決思路的相關資料,需要的朋友可以參考下
不廢話了,直接給大家貼代碼了,代碼很簡單,都是比較常見的sql語句,具體內容請看下文。
- 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);
如上三個表:用戶頭像表、產品表、用戶表
怎樣在模型中建立關聯?
- 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
- 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值來跟字段里的內容來比較呢
------解決思路----------------------
用模糊查詢吧
- $where = array('該字段'=>array('LIKE', '%' . $ID . '%'));
新聞熱點
疑難解答