संबंधपरक डेटा को पुनः प्राप्त करने के लिए Eloquent के साथ इसका बहुत आसान है। Laravel 5 में अपने परिदृश्य के साथ निम्नलिखित उदाहरण देखें।
हमारे पास तीन मॉडल हैं:
1) अनुच्छेद (उपयोगकर्ता और श्रेणी के अंतर्गत आता है)
2) श्रेणी (कई लेख हैं)
3) उपयोगकर्ता (कई लेख हैं)
1) अनुच्छेद। एफपी
<?php
namespace App\Models;
use Eloquent;
class Article extends Eloquent{
protected $table = 'articles';
public function user()
{
return $this->belongsTo('App\Models\User');
}
public function category()
{
return $this->belongsTo('App\Models\Category');
}
}
2) श्रेणी। एफपी
<?php
namespace App\Models;
use Eloquent;
class Category extends Eloquent
{
protected $table = "categories";
public function articles()
{
return $this->hasMany('App\Models\Article');
}
}
3) User.php
<?php
namespace App\Models;
use Eloquent;
class User extends Eloquent
{
protected $table = 'users';
public function articles()
{
return $this->hasMany('App\Models\Article');
}
}
आपको अपने डेटाबेस संबंध और मॉडल में सेटअप को समझने की आवश्यकता है। उपयोगकर्ता के कई लेख हैं। श्रेणी में कई लेख हैं। लेख उपयोगकर्ता और श्रेणी के हैं। एक बार जब आप लारवेल में रिश्तों को स्थापित करते हैं, तो संबंधित जानकारी को पुनः प्राप्त करना आसान हो जाता है।
उदाहरण के लिए, यदि आप उपयोगकर्ता और श्रेणी का उपयोग करके किसी लेख को पुनः प्राप्त करना चाहते हैं, तो आपको लिखना होगा:
$article = \App\Models\Article::with(['user','category'])->first();
और आप इसका उपयोग इस तरह कर सकते हैं:
$article->user->user_name
$article->category->category_name
एक अन्य मामले में, आपको किसी श्रेणी के सभी लेखों को पुनः प्राप्त करने या किसी विशिष्ट उपयोगकर्ता के लेखों को पुनः प्राप्त करने की आवश्यकता हो सकती है। आप इसे इस तरह लिख सकते हैं:
$categories = \App\Models\Category::with('articles')->get();
$users = \App\Models\Category::with('users')->get();
आप http://laravel.com/docs/5.0/eloquent पर अधिक जान सकते हैं