Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Laravel 5.2 – Użyj ciągu znaków jako niestandardowego klucza głównego dla elokwentnej tabeli, staje się 0

Zostało to dodane do dokumentacji aktualizacji 29 grudnia 2015 r. , więc jeśli dokonałeś aktualizacji wcześniej, prawdopodobnie to przegapiłeś.

Podczas pobierania dowolnego atrybutu z modelu sprawdza, czy kolumna powinna być rzutowana jako liczba całkowita, łańcuch itp.

Domyślnie w przypadku tabel z automatycznym przyrostem przyjmuje się, że identyfikator jest liczbą całkowitą w tej metodzie:

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

Rozwiązaniem jest więc:

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. Jak zaktualizować widok w MySQL

  2. Szukasz prostego wyszukiwania pełnotekstowego? Wypróbuj MySQL InnoDB + CakePHP z Word Stemming

  3. Próba uzyskania własności nieprzedmiotowej w

  4. Jak dołączyć zmienną PHP do instrukcji MySQL?

  5. PHP — bezpieczne strony tylko dla członków z systemem logowania