Я использую laravel + Nova, подключаясь к существующей базе данных существующего программного обеспечения. Первичный ключ - это не «ID» по умолчанию, поэтому на «модели» я изменил его следующим образом:
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class products extends Model
{
//
protected $table = 't_items';
protected $primaryKey = 'item_num';
public $timestamps = false;
}
============================================================= При изменении и обновлении базы данных (с помощью nova) ошибки нет, однако при использовании сохранения (для новой или существующей строки) возникает ошибка:
SQLSTATE[42000]:[Microsoft][ODBC Driver 13 forSQL Server][SQL Server] Error converting data type nvarchar to numeric 9SQL select top 1 * drom [t_items][item_num] = null
"item_num" is defined as:
numeric
primary key
Allo nulls = false
Identity = false
Identity seed = 0
Identity increment = 0
Length = 9
Numeric precision = 10
Numeric scale = 0
Что я должен добавить. Я думаю, что laravel soed не определяет идентификатор при сохранении, а сервер нуждается в этом