源码目录在\vendor\laravel\framework\src\Illuminate\Database\Eloquent\Relations下

关系:一对多(One To Many)

场景:每篇博客都有若干条评论,每条评论只属于一篇博客

Laravel的ORM入门

先定义两个Model,这里为了突出主要矛盾,删除了Model中部分无关代码

1
2
3
4
5
6
7
8
9
10
11
12
namespace App;
use Illuminate\Database\Eloquent\Model;
class Post extends Model
{  
        protected $table 'posts';
        public function Comments()
        {
                return $this->hasMany('App\Comment','PostID','CommentID');
        }
}

以上是博客Post的模型,接下来是评论Comment的模型

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
namespace App;
use Illuminate\Database\Eloquent\Model;
class Comment extends Model
{
        protected $table 'comments';
        public function Comment()
        {
                //
        }
     
        public function Post()
        {
                return $this->belongsTo('App\Post','CommentID','PostID');
        }
}

控制器里:

1
2
3
4
5
6
7
8
$articles=Post::where('id','>','50')->where('id','<','52')->get();
foreach($articles as $a){
        //echo $a->id;
        $comments=$a->Comments;
        foreach($comments as $c){
                //echo $c->id;
        }
}

  

  

  

 

本文为博主原创文章,转载请在明显位置注明出处: http://www.cnblogs.com/sweng

本作品采用知识共享署名-非商业性使用-禁止演绎 3.0 未本地化版本许可协议进行许可。

相关文章:

  • 2021-11-18
  • 2021-09-08
  • 2021-09-04
  • 2022-12-23
  • 2021-12-14
  • 2022-01-07
  • 2022-02-27
  • 2022-12-23
猜你喜欢
  • 2021-08-25
  • 2021-09-01
  • 2020-04-22
  • 2021-11-04
  • 2022-01-08
相关资源
相似解决方案