3

Laravel 的 Tinker REPL 对于方便地试验模型很有用,但是似乎无法导入命名空间,需要费力地键入模型命名空间。例如,这有效:

$ php artisan tinker
[1] $list = new mysweetapp\Todolist;
[2] > echo get_class($list);
mysweetapp\Todolist

这不会:

$ php artisan tinker
[1] use mysweetapp\Todolist;
// false
[2] $list = new Todolist;
[3] echo get_class($list);
Boris\EvalWorker

是否有某种方法可以将命名空间导入 Tinker,还是尚不支持?请注意,我绝对想使用命名空间,我只是不想重复输入命名空间。:-)

4

1 回答 1

3

看看这个https://softonsofa.com/tinker-like-a-boss-in-psysh/


您不能use namespace在 repl 本身中执行此操作,但您可以执行以下操作:

// config/local/app.php
'aliases' => append_config([
    'Todolist'   => 'Mysweetapp\Todolist',
    ... // more
]),

然后在您的本地环境中,您将能够在不输入命名空间的情况下访问您的模型,如果您不在本地环境中,则运行 tinker 强制它:

php artisan tinker --env=local
于 2014-10-08T08:51:44.377 回答