php - 在 laravel 中将电子邮件设置为主键
问题描述
我想在 laravel 迁移中创建一个电子邮件作为主键而不是 id,我试过了。
public function up()
{
Schema::create('users', function (Blueprint $table) {
$table->increments('id');
$table->primary('email');
});
}
我有一个如下错误:
SQLSTATE [42703]:未定义列:7 错误:关系“用户”的列“电子邮件”不存在(SQL:更改表“用户”添加主键(“电子邮件”))
解决方案
电子邮件通常不用作主键,这样做是一个坏习惯。如果你仍然想这样做,你可以这样做:
{
Schema::create('users', function (Blueprint $table) {
$table->increments('id');
$table->string('email')->primary();
});
}
请注意,不推荐!
推荐阅读
- linux - 停止无限循环并在循环结束时中断
- ansible - ansible:该任务包含一个带有未定义变量的选项。错误是:“变量”未定义
- javascript - 在页面加载后执行 Javascript 一段时间
- html - Bootstrap 4 导航栏在小屏幕尺寸上无法正常工作
- mocha.js - 在将 Jest 作为断言库的 WebdriverIO-Mocha 框架中未识别 before() 和 beforeAll() 钩子
- c# - 更改曲目 NAudio 后滑块不起作用
- c++ - 如何在 Mac 终端中查看 C++ 函数的错位名称
- python - 鹡鸰单页网站
- qt - 在 webbots 中使用 opencv 的“imshow”绘制图像
- php - Ηtaccess 无法将 index.php 指向子目录