Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

लार्वा वाक्पटु मॉडल द्वारा तीन तालिका में कैसे शामिल हों

वाक्पटु के साथ संबंधपरक डेटा पुनर्प्राप्त करना बहुत आसान है। लारवेल 5 में अपने परिदृश्य के साथ निम्नलिखित उदाहरण देखें।

हमारे पास तीन मॉडल हैं:

  1. लेख (उपयोगकर्ता और श्रेणी के अंतर्गत आता है)

  2. श्रेणी (कई लेख हैं)

  3. उपयोगकर्ता (कई लेख हैं)

  1. Article.php
    <?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');
        }
    }
  1. Category.php
    <?php
    namespace App\Models;
    
    use Eloquent;
    
    class Category extends Eloquent {
        protected $table = "categories";
    
        public function articles() {
            return $this->hasMany('App\Models\Article');
        }
    }
  1. User.php
    <?php
    namespace App\Models;
    use Eloquent;
    
    class User extends Eloquent {
        protected $table = 'users';
    
        public function articles() {
            return $this->hasMany('App\Models\Article');
        }
    }

आपको अपने डेटाबेस संबंध और मॉडलों में सेटअप को समझने की आवश्यकता है। उपयोगकर्ता के पास कई लेख हैं। श्रेणी में कई लेख हैं। लेख उपयोगकर्ता और श्रेणी के हैं। एक बार जब आप Laravel में संबंध स्थापित कर लेते हैं, तो संबंधित जानकारी को पुनः प्राप्त करना आसान हो जाता है।

उदाहरण के लिए, यदि आप उपयोगकर्ता और श्रेणी का उपयोग करके किसी लेख को पुनः प्राप्त करना चाहते हैं, तो आपको यह लिखना होगा:

$article = \App\Models\Article::with(['user','category'])->first();

और आप इसे इस तरह इस्तेमाल कर सकते हैं:

//retrieve user name 
$article->user->user_name  

//retrieve category 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 पर और जान सकते हैं।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. पीडीओ तैयार बयान कितने सुरक्षित हैं

  2. MySQL केवल एक पंक्ति देता है

  3. विंडोज 10 पर कार्यक्षेत्र के साथ MySQL 8 कैसे स्थापित करें

  4. MySQL पासवर्ड फ़ंक्शन

  5. MySQL में एकाधिक पंक्तियों को एक कॉलम में कैसे संयोजित करें