2012-12-28 24 views
25

यह सवाल अब हल हो गया है - मैं नीचे प्रयोग किया है:Laravel 4 माइग्रेशन - वर्ग नहीं मिला

और, समस्या हल आईआरसी के लिए धन्यवाद। मुझे

php composer.phar dump-autoload 

यह मेरे लिए समस्या को हल करता है। यह संभवतः मेरे अजीब संगीतकार सेटअप से संबंधित है।

php artisan migrate:make create_blogs_table --table=blogs --create 

यह:


मैं सिर्फ एक संभावित भावी परियोजना के लिए Laravel 4 के साथ खेल शुरू कर दिया है, Laravel 3. से आने वाले मैं एक नया माइग्रेशन, create_blogs_table का उपयोग कर कारीगर बनाने के द्वारा बंद शुरू कर दिया है बुनियादी प्रवास फ़ाइल संरचना जो मैं तो थोड़ा और बाहर भरा उत्पन्न:

<?php 

use Illuminate\Database\Migrations\Migration; 

class CreateBlogsTable extends Migration 
{ 

    /** 
    * Run the migrations. 
    * 
    * @return void 
    */ 
    public function up() 
    { 
     Schema::create('blogs', function($table) 
     { 
      $table->increments('id'); 
      $table->string('title'); 
      $table->text('description')->nullable(); 
      $table->integer('user_id')->unsigned(); 
      $table->timestamps(); 
     }); 
    } 

    /** 
    * Reverse the migrations. 
    * 
    * @return void 
    */ 
    public function down() 
    { 
     Schema::drop('blogs'); 
    } 
} 

मैं अब एक बार फिर से कारीगर का उपयोग कर इस प्रवास चलाने का प्रयास:

php artisan migrate --env=local 

* कृपया ध्यान मैं एक स्थानीय डेटाबेस कनेक्शन .dev विस्तार के साथ डोमेन के लिए सेट अप है

पहले यह ठीक (Laravel 3 में) काम करेगा लेकिन रोशन के साथ मैं तो यह त्रुटि प्राप्त:

PHP Fatal error: Class 'CreateBlogsTable' not found in /var/www/gamingsite/vendor/illuminate/database/src/Illuminate/Database/Migrations/Migrator.php on line 301 
PHP Stack trace: 
PHP 1. {main}() /var/www/gamingsite/artisan:0 
PHP 2. Symfony\Component\Console\Application->run() /var/www/gamingsite/artisan:57 
PHP 3. Symfony\Component\Console\Application->doRun() /var/www/gamingsite/vendor/symfony/console/Symfony/Component/Console/Application.php:106 
PHP 4. Illuminate\Console\Command->run() /var/www/gamingsite/vendor/symfony/console/Symfony/Component/Console/Application.php:193 
PHP 5. Symfony\Component\Console\Command\Command->run() /var/www/gamingsite/vendor/illuminate/console/src/Illuminate/Console/Command.php:95 
PHP 6. Illuminate\Console\Command->execute() /var/www/gamingsite/vendor/symfony/console/Symfony/Component/Console/Command/Command.php:240 
PHP 7. Illuminate\Database\Console\Migrations\MigrateCommand->fire() /var/www/gamingsite/vendor/illuminate/console/src/Illuminate/Console/Command.php:107 
PHP 8. Illuminate\Database\Migrations\Migrator->run() /var/www/gamingsite/vendor/illuminate/database/src/Illuminate/Database/Console/Migrations/MigrateCommand.php:69 
PHP 9. Illuminate\Database\Migrations\Migrator->runMigrationList() /var/www/gamingsite/vendor/illuminate/database/src/Illuminate/Database/Migrations/Migrator.php:75 
PHP 10. Illuminate\Database\Migrations\Migrator->runUp() /var/www/gamingsite/vendor/illuminate/database/src/Illuminate/Database/Migrations/Migrator.php:106 
PHP 11. Illuminate\Database\Migrations\Migrator->resolve() /var/www/gamingsite/vendor/illuminate/database/src/Illuminate/Database/Migrations/Migrator.php:125 
PHP Fatal error: Uncaught exception 'UnexpectedValueException' with message 'The stream or file "/var/www/gamingsite/app/start/../storage/logs/log-2012-12-28.txt" could not be opened: failed to open stream: Permission denied' in /var/www/gamingsite/vendor/monolog/monolog/src/Monolog/Handler/StreamHandler.php:71 
Stack trace: 
#0 /var/www/gamingsite/vendor/monolog/monolog/src/Monolog/Handler/RotatingFileHandler.php(77): Monolog\Handler\StreamHandler->write(Array) 
#1 /var/www/gamingsite/vendor/monolog/monolog/src/Monolog/Handler/AbstractProcessingHandler.php(37): Monolog\Handler\RotatingFileHandler->write(Array) 
#2 /var/www/gamingsite/vendor/monolog/monolog/src/Monolog/Logger.php(214): Monolog\Handler\AbstractProcessingHandler->handle(Array) 
#3 /var/www/gamingsite/vendor/monolog/monolog/src/Monolog/Logger.php(278): Monolog\Logger->addRecord(400, Object(Symfony\Component\HttpKernel\Exception\FatalErrorException), Array) 
#4 [internal function]: Monolog\Logger->addError(Object(Symfony\Component\HttpKernel\Exception\FatalErrorExcepti in /var/www/gamingsite/vendor/monolog/monolog/src/Monolog/Handler/StreamHandler.php on line 71 
PHP Stack trace: 
PHP 1. {main}() /var/www/gamingsite/artisan:0 
PHP 2. Symfony\Component\Console\Application->run() /var/www/gamingsite/artisan:57 
PHP 3. Symfony\Component\Console\Application->doRun() /var/www/gamingsite/vendor/symfony/console/Symfony/Component/Console/Application.php:106 
PHP 4. Illuminate\Console\Command->run() /var/www/gamingsite/vendor/symfony/console/Symfony/Component/Console/Application.php:193 
PHP 5. Symfony\Component\Console\Command\Command->run() /var/www/gamingsite/vendor/illuminate/console/src/Illuminate/Console/Command.php:95 
PHP 6. Illuminate\Console\Command->execute() /var/www/gamingsite/vendor/symfony/console/Symfony/Component/Console/Command/Command.php:240 
PHP 7. Illuminate\Database\Console\Migrations\MigrateCommand->fire() /var/www/gamingsite/vendor/illuminate/console/src/Illuminate/Console/Command.php:107 
PHP 8. Illuminate\Database\Migrations\Migrator->run() /var/www/gamingsite/vendor/illuminate/database/src/Illuminate/Database/Console/Migrations/MigrateCommand.php:69 
PHP 9. Illuminate\Database\Migrations\Migrator->runMigrationList() /var/www/gamingsite/vendor/illuminate/database/src/Illuminate/Database/Migrations/Migrator.php:75 
PHP 10. Illuminate\Database\Migrations\Migrator->runUp() /var/www/gamingsite/vendor/illuminate/database/src/Illuminate/Database/Migrations/Migrator.php:106 
PHP 11. Illuminate\Database\Migrations\Migrator->resolve() /var/www/gamingsite/vendor/illuminate/database/src/Illuminate/Database/Migrations/Migrator.php:125 

मैंने जांच की है और डेटाबेस/माइग्रेशन/फ़ोल्डर निश्चित रूप से स्वत: लोड हो रहा है। मुझे नहीं पता कि इस समस्या का कारण क्या हो सकता है। आईआरसी और गुगले से पूछने के बाद भी मैं पूरी तरह से अनजान हूं इसलिए उम्मीद है कि कोई मेरी मदद कर सकता है।

अग्रिम धन्यवाद!

उत्तर

16

लार्वेल 4 (रोशनी) माइग्रेशन क्लास में आपको हस्ताक्षरित विधि सेट करने की आवश्यकता नहीं है। आप इसे आजमा सकते हैं।

class CreateBlogsTable extends Migration 
{ 

    /** 
    * Run the migrations. 
    * 
    * @return void 
    */ 
    public function up() 
    { 
     Schema::create('blogs', function($table) 
     { 
      $table->increments('id'); 
      $table->string('title'); 
      $table->text('description')->nullable(); 
      $table->integer('user_id'); 
      $table->timestamps(); 
     }); 
    } 

    /** 
    * Reverse the migrations. 
    * 
    * @return void 
    */ 
    public function down() 
    { 
     Schema::drop('blogs'); 
    } 
} 

आप के साथ चैट करने के बाद, मैं दो समस्याओं जानता था, एक है कि पहले से ही ऊपर उल्लेख किया और अन्य समस्या वर्ग संगीतकार autoload में पंजीकृत नहीं किया गया के कारण है। आप मैन्युअल रूप से चलाने के लिए होगा:

php artisan dump-autoload 

:

+2

बस कोशिश की और अभी भी कोई भाग्य नहीं है। मुझे अभी भी कक्षा में त्रुटि नहीं मिली है। – euantorano

+0

मैंने अभी जवाब अपडेट किया है। – Raftalks

+14

में एक ही समस्या थी, 'php composer.phar डंप-ऑटोलोड' चल रहा था। – Rob

28

php composer.phar डंप-autoload मैं xubuntu पर इस त्रुटि था और sudo संगीतकार डंप-autoload साथ यह तय

+4

हाँ मेरे लिए काम किया! – Ortix92

15

कारीगर ही काम करते हैं उन लोगों के लिए बस एक अनुस्मारक जो composer से परिचित नहीं हैं।

+0

यह संगीतकार का उपयोग करने से वास्तव में बेहतर है, क्योंकि यह एक अनुकूलित क्लासमैप – developerbmw

+0

उत्पन्न करता है असल में यह आदेश मेरे लिए मौजूद नहीं था लेकिन 'संगीतकार डंप-ऑटोलोड' ने समस्या हल की। धन्यवाद! विचार के लिए, कम से कम। – IIllIIll

+0

जो लोग समस्या की खोज करते हैं, कृपया ध्यान दें कि यह प्रश्न 3 साल पहले है और लार्वेल का संस्करण 4 है और सॉफ्टवेयर स्वयं ही बदल रहा है। इसका मतलब है, ** यह आदेश नवीनतम कारीगर ** में मौजूद नहीं है। धन्यवाद। – Yarco

-1

अपने संगीतकार (composer self-update) को अद्यतन करें, फिर अपने संगीतकार कार्यों को चलाएं।

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