问题标签 [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.
php - Laravel 7 错误消息:'SQLSTATE [23000]:完整性约束违规:19 NOT NULL 约束失败:profiles.url
更新:问题解决了!
我正在更新我的 Laravel 技能(使用版本 7.13.0),按照 freecodecamp.org 教程,在这里:https ://www.youtube.com/watch?v=ImtZ5yENzgE&t= 11889s(1:21:49 到 1: 22:50)。当我完成使用php artisan tinker手动添加配置文件的任务时,就像我在前端所做的那样,它无法保存。数据库是sqlite。
这是完整的错误:
用消息'SQLSTATE [23000]照亮/数据库/查询异常:完整性约束违规:19 NOT NULL约束失败:profiles.url(SQL:插入“profiles”(“title”,“description”,“user_id”,“updated_at” , "created_at") 值 (Cool Title, Description, 1, 2020-05-29 18:41:02, 2020-05-29 18:41:02))'
我在 database\migrations 文件夹中的profiles_table.php中的函数似乎没问题。它是这个:
Profile.php 模型函数为:
User.php 模型函数为:
于是,在终端中,输入php artisan tinker后,我在保存失败前填写了以下内容:
编辑:这是控制器文件ProfilesController.php,如果它有助于解决问题:
所有部件都正常,在我输入 SAVE 后 - 它显示了上面的错误。因此,我无法继续显示手动制作的新配置文件。
我搜索了谷歌并在这里寻找答案,就像在这个问题和那个问题中一样。它没有解决我的问题,而且我认为其他问题不那么相关。
我应该怎么做才能修复它?
解决方案
坦克到@mrhn,添加一个新的空表+composer require doctrine/dbal
按照这里的建议安装:https ://stackoverflow.com/a/37533819/12952748 。
laravel - 'PHP artisan tinker' 控制台命令不知道 HOMEDRIVE
这是我第一次来这里。肯定不是最后一个。我正在与 Laravel 合作并试图进入php artisan tinker
. 这是我第一次完成教程后,第二次使用 Laravel 和 tinker。那时一切都很好。现在,当我进入php artisan tinker
控制台时,它会告诉我:
错误异常
我尝试回到旧的教程项目,它似乎工作得很好。然后我尝试创建第三个项目,但它再次不起作用。所以似乎每个新项目都有同样的问题。谷歌没有帮助我,也许是因为我是一个菜鸟。我尝试了作曲家更新,但我什至不知道这是否相关,而且它没有做任何事情。想法?谢谢!
php - 使用 php artisan migrate 时,迁移时更改表名,使用 tinker 保存对象时出错
这是我的迁移,我正在使用 mysql,当我运行迁移时,它成功并且我查看了我的 mysql DB,表的名称是我想要的“receivedDocument”。
当我使用 tinker 创建和保存记录时,它失败了。Tinker 似乎不知道我在迁移中更改了表名。
如何告诉 tinker 我在迁移过程中发生了什么变化?
php - Laravel - 数据库结构更改 - 这是一个好习惯吗?
你好吗?我想问你谁比我有更多的经验,我想做的是在 Laravel 中做的好还是坏的做法。
我正在制作一个订购应用程序,并且在我的数据库中我有一个产品具有一定的价格(产品表中的另一个字段)。但后来我意识到,当产品的价格某一天发生变化时,旧订单中的价格也会发生变化,即旧订单会采用产品此时此刻的新价格,而不是下单的日期。被放置,从而产生了一个信息问题。
为此,我决定创建一个包含临时价格的新表,也就是说,如果价格发生变化,则在数据库中创建一个新行,其中包含某个日期的价格,但另一个价格为记录下来。日期。
现在,我的问题是……如何在没有用户干预的情况下将产品的当前价格带到我正在创建的新表中……也就是说,将每种产品的所有价格迁移到该新表中。我的想法是创建一个遍历每个产品的函数,并在价格表中创建一个新行,其中包含产品 ID、价格和当前日期。创建此功能后,通过 Tinker 运行它,用户不会注意到任何内容,但系统采用了新的价格结构。
这个好?这是一个好习惯还是有更好的方法来做到这一点?
谢谢你。
php - Nesbot Carbon diffInHours 的奇怪结果
我正在tinker
为 SO 上的另一个问题做一些研究。并且对 Carbon 的 diffInHours 有一些奇怪的行为。前面时间的差异与过去的时间差异不同。这是我的修补程序命令和返回值:
有没有人知道是什么导致了这种行为?
php - 在使用 tinker CLI 时,Laravel 如何在 Eloquent 模型上查找和显示动态属性?
当我们使用artisan tinker
, 并引用一个 Eloquent 模型对象时,REPL 会自动打印模型的属性,就像它打印我们引用的任何标准对象的公共属性一样:
对我来说不太明显的是如何使这些虚拟属性出现在这里,就好像它们已经被定义为类的公共属性一样。我知道模型的大部分属性分配都是由HasAttributes
trait 在内部处理的,但是即使看那里,我仍然看不到 Laravel 的作者是如何实现这种行为的。
我试过建立一个这样的类:
但即使使用有效的数组访问和toArray
方法,当我直接从以下位置引用它时artisan tinker
:
我们如何改变 REPL 在打印这样的对象时使用的表示?
laravel - 找不到 PHP Artisan 修补程序类“XdgBaseDir\Xdg”
在我当前的项目中运行 php artisan tinker 时遇到错误。我尝试使用 laravel new projectname 创建一个新项目,但是在运行 php artisan tinker 时发生了同样的错误。这是发生的错误。
php - 为什么 HTTP 请求在 Tinker 中可以正常工作,但在 Laravel 7 的应用程序中却不行?
我正在尝试上传一个POST
对API
. 因此,当我在 Tinker 中对其进行测试时,它工作正常,上传文件大约需要 5 秒,但是当我使用测试自己的端点时,Postman
我得到了这个错误:
"message": "最大执行时间超过 60 秒"。
不知道为什么它在 Tinker 上运行良好,但在应用程序中却不行。
这是我的请求的样子:
我已经像这样清除了缓存和配置
和
很感谢任何形式的帮助!非常感谢!