3

L4を使用するために稼働中の本番L3サイトを移行しています。コントローラがライブラリクラス()を呼び出すとapp/libraries/adminthing.php、エラーが発生しますError: Class 'adminthing' not found in /var/www/l4/app/controllers/AdminController.php line 15

start / global.php

ClassLoader::addDirectories(array(

    app_path().'/controllers',
    app_path().'/models',
    app_path().'/database/seeds',
    app_path().'/libraries',

));

composer dumpautoloadライブラリクラスを追加した後も実行しました。他に何を逃しましたか?

4

1 に答える 1

10

composer.json からフォルダーを自動ロードできます。/app の下のフォルダーにいくつかのカスタム クラスがある場合は、そのフォルダーを composer.json に追加すると、クラスが自動的に読み込まれます。

"autoload": {
  "classmap": [
    "app/commands",
    "app/controllers",
    "app/models",
    "app/database/migrations",
    "app/database/seeds",
    "app/tests/TestCase.php",
    "app/customlib" <-- add this
  ]
},

次に、composer dump-autoload を実行すると、クラスが使用できるようになります!

于 2013-03-23T18:44:00.010 に答える