2015-08-05 12 views
15

लैरवेल 4 में वाक्प्रचार मॉडल के सभी उदाहरण एलोक्वेंट बढ़ाते हैं, लेकिन जब आप लार्वेल 5 में मॉडल उत्पन्न करते हैं तो यह कहता है कि मॉडल का विस्तार होता है, क्या वे वही हैं?मॉडल बढ़ाता है == विलक्षण विस्तार करता है?

Laravel 4

<?php 

class User extends Eloquent { 

    //Code 

} 

Laravel 5

<?php 

class User extends Model { 

    //Code 

} 

Laravel 5 docs का कहना है:

डिफाइनिंग सुवक्ता मॉडल

class User extends Model {} 

उत्तर

14

हां वे वही हैं। लार्वेल 4 क्लास एलिसिंग का उपयोग Illuminate\Database\Eloquent\Model से Eloquent पर करने के लिए करता है। आप app/config/app.php फ़ाइल में देख सकते हैं:

'Eloquent'   => 'Illuminate\Database\Eloquent\Model', 

Laravel 5 का उपयोग करता है के बजाय नेमस्पेसिंग। तो मॉडल वर्ग के शीर्ष पर आप इस लाइन देखेंगे:

use Illuminate\Database\Eloquent\Model; 
1

इस्तेमाल किया ...

use Illuminate\Database\Eloquent\Model; 

मॉडल

0

मैं _ide_helper.php फ़ाइल उपयोग कर रहा हूँ का विस्तार करने के बैरीवध के लार्वेल-ide-helper

उप-वर्ग को एलोक्वेंट भी कहा जाता है और मॉडल तक फैला हुआ है।

इसलिए यदि मैं अपनी खुद की मॉडल क्लास को एलोक्वेंट में विस्तारित करता हूं, तो आईडीई MyModelClass :: find जैसे सभी कार्यों को जानता है। शायद ऐसा करने का एक और तरीका है, लेकिन यह वास्तव में मेरे लिए काम करता है।

संबंधित मुद्दे