问题标签 [tinker]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
laravel - Laravel 修补模式
如果我运行php artisan tinker
CLI 将打开
现在我输入一个像“test”这样的词,然后按回车键。
- 我进入了什么模式?
- 如何退出此模式?(ctrl+c 退出 tinker,但实际上我只想能够像往常一样再次执行命令,这意味着我输入一个命令,当我按下返回键时,它将被执行)
- 如何在这种模式下执行命令。如果我在此模式下按 Enter,我将移至下一行,但不会执行该命令。
laravel - 使用 Tinker/Laravel 创建虚拟数据
在 Tinker 中,App\Models\Project::all();
返回所有项目的列表。现在我想添加额外的虚拟数据factory(App\Models\Project::class, 10)->create();
,但什么也没发生。
我做错了什么,我该如何调试它?
php - PHP Artisan Tinker 不适用于 Laravel 5.4 和 PHP 7.0.1
我刚刚在我的 Laravel 项目 5.4 中添加了修补程序。当我尝试运行时:
我收到以下错误:
我尝试过授予各种文件夹的权限。还尝试将 Tinker 类添加到 console/kernel.php。
php - PHP Artisan Tinker 无法写入配置路径
我以前使用过 Tinker,但突然停止工作,无论是什么项目,什么版本,新的或现有的。我正在使用带有 zsh 的 macbook pro 2013、mac os Sierra、iterm2。我已经进行了全面研究,除了堆栈溢出中对https://github.com/bobthecow/psysh/issues/382的一个引用之外没有发现任何相关的东西,它没有显示解决方案,不是 laravel 特定的,但似乎是涉及 psy shell(所有其他工匠命令都可以):
vagrant@homestead:~/Code/application$ php artisan tinker
是我显示的错误。Vagrant 是通过运行 homestead-7 的虚拟盒子设置的。
当我 ssh 进入 vagrant 和 ls -la 时,我看到了 .config 文件夹,但由于访问被拒绝错误,我无法访问它,我也无法 mkdir mvdir。(如果我从下面的堆栈跟踪中了解到错误被触发的位置?touchfilemkdir 所在的跟踪顶部?)该文件夹本身由 vagrant 所有。我可以确定错误触发的位置,但我不知道为什么它可能会触发,无论我使用什么版本的 laravel,无论是现有项目还是新下载。
在 laravel 项目本身中,我有
在 composer.json 和
位于 app/cofig/app.php 中。
我确实运行了一个详细的堆栈跟踪,尽管我不确定它所指向的内容或原因。
/home/vagrant/Code/lightpointLP/vendor/psy/psysh/src/Psy/ConfigPaths.php:213
Illuminate\Foundation\Bootstrap\HandleExceptions->handleError() at n/a:n/a
trigger_error() at /home/vagrant/Code/lightpointLP/vendor/psy/psysh/src/Psy/ConfigPaths.php:213
Psy\ConfigPaths::touchFileWithMkdir() at /home/vagrant/Code/lightpointLP/vendor/psy/psysh/src/Psy/Configuration.php:361
Psy\Configuration->setHistoryFile() at /home/vagrant/Code/lightpointLP/vendor/psy/psysh/src/Psy/Configuration.php:409
Psy\Configuration->getHistoryFile() at /home/vagrant/Code/lightpointLP/vendor/psy/psysh/src/Psy/Configuration.php:546
Psy\Configuration->getReadline() at /home/vagrant/Code/lightpointLP/vendor/psy/psysh/src/Psy/Shell.php:82
Psy\Shell->__construct() at /home/vagrant/Code/lightpointLP/vendor/laravel/tinker/src/Console/TinkerCommand.php:53
Laravel\Tinker\Console\TinkerCommand->handle() at n/a:n/a
call_user_func_array() at /home/vagrant/Code/lightpointLP/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:29
Illuminate\Container\BoundMethod::Illuminate\Container\{closure}() at /home/vagrant/Code/lightpointLP/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:87
Illuminate\Container\BoundMethod::callBoundMethod() at /home/vagrant/Code/lightpointLP/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:31
Illuminate\Container\BoundMethod::call() at /home/vagrant/Code/lightpointLP/vendor/laravel/framework/src/Illuminate/Container/Container.php:539
Illuminate\Container\Container->call() at /home/vagrant/Code/lightpointLP/vendor/laravel/framework/src/Illuminate/Console/Command.php:182
Illuminate\Console\Command->execute() at /home/vagrant/Code/lightpointLP/vendor/symfony/console/Command/Command.php:264
Symfony\Component\Console\Command\Command->run() at /home/vagrant/Code/lightpointLP/vendor/laravel/framework/src/Illuminate/Console/Command.php:167
Illuminate\Console\Command->run() at /home/vagrant/Code/lightpointLP/vendor/symfony/console/Application.php:874
Symfony\Component\Console\Application->doRunCommand() at /home/vagrant/Code/lightpointLP/vendor/symfony/console/Application.php:228
Symfony\Component\Console\Application->doRun() at /home/vagrant/Code/lightpointLP/vendor/symfony/console/Application.php:130
Symfony\Component\Console\Application->run() at /home/vagrant/Code/lightpointLP/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php:122
Illuminate\Foundation\Console\Kernel->handle() at /home/vagrant/Code/lightpointLP/artisan:35
如果可能需要任何其他信息,我很乐意提供,我真的不知道发生了什么或如何解决它。谢谢
更新 8 月 31 日所以我发现当我在 vagrant@homestead 和我 sudo su 时,当我在 root@homestead:/home/vagrant# 并输入 .config 时,有一个 configstore 目录和一个 psysh 目录,但它是由根拥有。我将所有者更改为 vagrant,退出,重新加载 vagrant 和相同的错误。
drwx------ 2 root root 4096 May 4 00:55 configstore
drwxr-xr-x 2 vagrant vagrant 4096 Aug 31 23:37 psysh
然后我尝试了 sudo -i 并得到了 root@homestead 但发现 .config 的内容不同。这次它有 .composer 目录并且没有 psysh 存在。所以我添加了以 vagrant 作为所有者的 psysh 目录,
drwxr-xr-x 2 root root 4096 Feb 26 2017 composer
drwxr-xr-x 2 vagrant vagrant 4096 Aug 31 23:59 psysh
但这仍然不起作用。我也退出了,重新加载了 vagrant,我在两者上都配置了:cleared,但我得到了同样的无法写入错误。
我很茫然,请任何见解都会有所帮助。谢谢!
php - Laravel Tinker:找不到类“Psy\Exception\ErrorException”
我正在尝试运行 Laravel 5.5 修补程序,但是当我尝试运行工厂命令时出现异常。例如:
当我尝试运行时,可以说另一个存储库中的 User:class 命令它可以正常工作。
扩展错误消息:
我已经尝试过的:
- 从 composer.json 中删除并重新添加 laravel/tinker
caching - laravel5.5 缓存无法进入控制台或修补程序
我使用 laravel5.5,在控制台或 tinker 上使用缓存对象,但我尝试在控制台或 tinker 中使用缓存,返回 null!为什么?我发现只使用 reids 对象是可以的,但尝试交换缓存驱动器也错误!
php - laravel 5.5:php artisan tinker:ErrorException:目录不为空
我正在使用窗户。...在我的 CMD 中,正在使用 tinker、myql、serve 等...它们都运行良好...
突然,当我退出 tinker 并再次进入 tinker 时...出现此错误
[ErrorException]
rmdir(C:\Users\robert\AppData\Local\Temp\php-xdg-runtime-dir-fallback-): Directory not empty
然后果然,我尝试删除,我不能尝试将文件夹重命名为其他内容,它有效......“php artisan tinker”工作......但我无法运行通常的命令
$user = App\User::all();
然后我退出......然后输入再次修补……再次
[ErrorException]
rmdir(C:\Users\robert\AppData\Local\Temp\php-xdg-runtime-dir-fallback-):
Directory not empty
首先,我搜索了类似的问题,但解决方案对我不起作用(PHP Artisan Tinker not working with Laravel 5.5.16)
其次,我尝试制作laravel new NewProject
,运行修补程序......仍然相同 ErrorException
第三,我尝试了composer update
or composer require laravel/tinker
... 然后添加Laravel\Tinker\TinkerServiceProvider::class,
里面的 config/app.php => providers.... 还是一样的 ErrorException
顺便说一句,这是全长错误
``` php artisan tinker -vvv --ansi ? [37;41m ?[39;49m ?[37;41m [ErrorException] ?[39;49m ?[37;41m rmdir(C:\Users\robert\AppData\Local\Temp\php-xdg-runtime-dir- fallback-): 目录不为空 ?[39;49m ?[37;41m ?[39;49m
```
有人可以帮忙吗?谢谢
php - 如何使用每个循环的 tinker 为数据库虚拟数据播种 - Laravel PHP
我尝试使用修补程序命令为我的 mysql 数据库播种,并且正在努力组合两个每个循环...
我有一张表电影、用户和收视率。我想为数据库播种 10 部电影、3 个用户,并为每个用户对每部电影评分。
我将数据放入用户和电影这两个表中,并将它们保存到 $movies 和 $users。并尝试使用以下行为每部电影的 user_id 和 movie_id 创建 3 个评分。
回显 $movies 和 $users 向我显示数据在那里。最后一行给了我一个错误:HP Notice: Undefined variable: users on line 2
试图简化测试的语法:
有同样的错误。
我猜是 $users 变量没有在第一个函数中定义?我必须在第一个函数中定义 $users 吗?如果我不想为每部电影创建 3 个新用户,我该怎么做?也许我可以使用for循环以某种方式遍历用户并以这种方式检索用户ID?
提前感谢您帮助我
php - Laravel Tinker 创建具有构造函数作为接口的新对象
我正在尝试使用 Laravel Tinker 创建一个具有构造函数作为接口的新对象。MyClass.php
接口接口.php
我想在修补程序中测试我的课程,所以我所做的是:
php artisan tinker
>> $a = new App\MyClass(new App\ApiInterface);
我得到的错误是:
PHP 致命错误:在第 1 行的 eval() 代码中找不到类“App\ApiInterface”
修补匠不允许我做我觉得修补匠无法将接口识别为类的事情
任何想法 ?
谢谢
laravel - Laravel 命令,如 tinker
我想知道是否有任何方法可以在 laravel 中运行临时命令?就像在修补匠中一样,但没有修补匠?
我希望能够在不使用 tinker 的情况下运行临时命令?
例子:
我想每 5 秒运行一次?