मेरे पास models
नामक निर्देशिका है app/
जहां मैं अपने सभी मॉडल वर्ग रखता हूं। अब मैं निर्देशिका को बदलना चाहते हैं जहां निम्न आदेश उत्पन्न वर्गोंलार्वेल 5 मॉडल फ़ोल्डर
php artisan make:model SomeModel
मेरे पास models
नामक निर्देशिका है app/
जहां मैं अपने सभी मॉडल वर्ग रखता हूं। अब मैं निर्देशिका को बदलना चाहते हैं जहां निम्न आदेश उत्पन्न वर्गोंलार्वेल 5 मॉडल फ़ोल्डर
php artisan make:model SomeModel
आप नहीं कर सकते हैं आउटपुट और, यदि आप ब्रह्मांड के Laravel के संस्करण के लिए hewing हैं, तो आप नहीं करना चाहिए। लैरवेल 5 अपनी सभी वर्ग फ़ाइलों के लिए एक पीएसआर -4 नामकरण सम्मेलन प्रदान करता है, और मानता है। इसका मतलब है कि मॉडल (और सभी वर्ग) को उनके पूर्ण श्रेणी के नाम के आधार पर रखा जाना चाहिए।
जब आप कहते हैं कि
php artisan make:model SomeModel
आप वास्तव में App\SomeModel
का पूरा नाम साथ कोई मॉडल बना रहे हैं, ताकि artisan
निम्नलिखित फ़ाइल बनाता है।
app/SomeModel.php
यदि आप कहा
php artisan make:model 'Test\SomeModel'
आप पूरा नाम App\Test\SomeModel
साथ कोई मॉडल बना होगी, और Laravel
app/Test/SomeModel.php
तो निम्न फ़ाइल बना सकेगी, इसकी अपने मॉडल के पूर्ण वर्ग का नाम (नामस्थान शामिल) जो निर्धारित करता है कि कक्षा परिभाषा फ़ाइल कहां है।
मैंने पाया यह होना चाहिए:
php artisan make:model ModelFolder\\SomeModel
असल में यह एक बैकस्लैश होना चाहिए –
एक बैकस्लैश – fdrv
के साथ काम नहीं करता है जो आपके टर्मिनल पर बहुत अच्छी तरह से निर्भर हो सकता है ...? –
आप विशिष्ट फ़ोल्डर पर मैन्युअल मॉडल बनाना चाहते हैं। उदाहरण यदि आप मॉडल मॉडल Models
में मॉडल बनाना चाहते हैं। आपके द्वारा पहले बनाए गए फ़ोल्डर मॉडल के अंदर info.php
नाम की फ़ाइल बनाएं। यहाँ आप info.php
<?php namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Info extends Model
{
// your code
protected $table = 'tb_users';
}
बेशक में इस तरह कोड लिखना चाहिए रहे हैं आप Info
कोई दृश्य बनाते समय है कि मॉडल कॉल करने के लिए चाहते हैं, तो आप भी कारीगर आदेश php artisan make:model "Models\Info"
उपयोग कर सकते हैं
<?php
$users = App\Models\Info::all();
foreach ($users as $user) {
echo $user->name;
}
यह उपयोगकर्ताओं के सभी नाम प्रदर्शित करेगा
मैंने इसे लैरवेल 5 में और मॉडर के लिए पथ देने पर कोशिश की एल फाइल, मुझे आपके द्वारा वर्णित एकल उद्धरण के बिना पथ का उल्लेख करना पड़ा। यह मेरे लिए काम करता है: 'php artisan make: मॉडल टेस्ट \ SomeModel' – Neel
@Alan: क्या Laravel 5 से मॉडल निर्देशिका को हटाने का कोई विशिष्ट कारण है? – Ashish
@ आशीष नामस्थानों के लिए PHP मानकों के अनुरूप है, और सभी एप्लिकेशन वर्गों को समान तरीके से स्वत: लोड करने की स्थिरता। –