Mysql
 sql >> база данни >  >> RDS >> Mysql

Laravel 5.2 - Използвайте низ като персонализиран първичен ключ за Eloquent Table става 0

Това беше добавено към документацията за надстройване на 25 декември 2010 г. , така че ако сте надстроили преди, вероятно сте го пропуснали.

Когато извлича някакъв атрибут от модела, той проверява дали тази колона трябва да се преобразува като цяло число, низ и т.н.

По подразбиране за автоматично увеличаващи се таблици се приема, че идентификаторът е цяло число в този метод:

https://github.com /laravel/framework/blob/5.2/src/Illuminate/Database/Eloquent/Model.php#L2790

Така че решението е:

class UserVerification extends Model
{
    // if your key name is not 'id'
    // you can also set this to null if you don't have a primary key
    protected $primaryKey = 'your_key_name';

    public $incrementing = false;

    // In Laravel 6.0+ make sure to also set $keyType
    protected $keyType = 'string';
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да включите PHP променлива в MySQL оператор

  2. Поддръжка на ScaleGrid DigitalOcean за MySQL, PostgreSQL и Redis™ вече е налична

  3. Как да промените директория с данни MySQL/MariaDB по подразбиране в Linux

  4. Как да архивирате криптирана база данни с Percona Server за MySQL 8.0

  5. MySQL - Използване на COUNT(*) в клаузата WHERE