2017-01-23 39 views
1

私はlaravel appを持っています。Laravel 5.3、クラス 'App Models User'が見つかりません

php artisan serveコマンドを使用してローカルで動作します。

リモートサーバーへの展開後は機能しません。

すべて職人コマンドが返す:

[Symfony\Component\Debug\Exception\FatalThrowableError] 
Class 'App\Models\User' not found  

抜粋App\Models\User.php(大文字と小文字を区別)から。

<? 
namespace App\Models; 

use Illuminate\Notifications\Notifiable; 
use Illuminate\Foundation\Auth\User as Authenticatable; 

class User extends Authenticatable { 
// code here 
} 

composer dump-autoloadで修正されません。

.gitignore

/vendor 
.env 
/public/css/ 
/public/js/ 
/public/img/ 
/public/fonts/ 
/node_modules/ 

composer.json

{ 
"name": "laravel/laravel", 
"description": "The Laravel Framework.", 
"keywords": ["framework", "laravel"], 
"license": "MIT", 
"type": "project", 
"require": { 
    "php": ">=5.6.4", 
    "laravel/framework": "5.3.*", 
    "caouecs/laravel-lang": "~3.0" 
}, 
"require-dev": { 
    "fzaninotto/faker": "~1.4", 
    "mockery/mockery": "0.9.*", 
    "phpunit/phpunit": "~5.0", 
    "symfony/css-selector": "3.1.*", 
    "symfony/dom-crawler": "3.1.*" 
}, 
"autoload": { 
    "classmap": [ 
     "database" 
    ], 
    "psr-4": { 
     "App\\": "app/", 
     "Seeds\\": "database/seeds/" 
    }, 
    "files": [ 
     "app/Http/Helpers.php" 
    ] 
}, 
"autoload-dev": { 
    "classmap": [ 
     "tests/TestCase.php" 
    ] 
}, 
"scripts": { 
    "post-root-package-install": [ 
     "php -r \"file_exists('.env') || copy('.env.example', '.env');\"" 
    ], 
    "post-create-project-cmd": [ 
     "php artisan key:generate" 
    ], 
    "post-install-cmd": [ 
     "Illuminate\\Foundation\\ComposerScripts::postInstall", 
     "php artisan optimize" 
    ], 
    "post-update-cmd": [ 
     "Illuminate\\Foundation\\ComposerScripts::postUpdate", 
     "php artisan optimize" 
    ] 
}, 
"config": { 
    "preferred-install": "dist" 
} 

}

ローカルシステム:PHP 7.0

+0

ちょうど 'App \ User'であるはずですが、それを変更してModelフォルダを追加しましたか? – GabMic

+0

はい、私は 'App \ User'から' App \ Models \ User'へのすべてのリンクを置き換えました。ローカルでは動作しますが、リモートサーバーでは動作しません。 – changer

答えて

1

追加とDebianのジェシー:PHP 7.0 リモートシステムとアーチのlinux use句は、コントローラの上部にあります。 User.phpapp\Modelsディレクトリにあることを確認し、また

$user = App\Models\User::find(1); 

とあなたがモデルを変更したことを確認してください:あなたは完全な名前空間を使用することができ、また

use App\Models\User; 

:あなたはモデルを使用しようとしていますconfig\auth.phpファイル:

'providers' => [ 
    'users' => [ 
     'driver' => 'eloquent', 
     'model' => App\Model\User::class, 
    ], 
], 
+0

あなたは質問を慎重に読まなかった。非常に同じコードがローカルで動作します。 – changer

+1

@changer非常に同じコードがローカルで動作する場合、サーバ上で 'php artisan config:clear'コマンドを実行してください。 –

+0

それは役に立ちません。すべての職人コマンドが同じエラーで失敗します。 – changer

0

最後に解決策が見つかりました。

php.iniでshort_open_tag = Onとvoilaを設定しました。

関連する問題