Laravel: ошибка SQL при использовании блока кода для установки поля на объекте customer
Я получаю следующую ошибку.
SQLSTATE[HY000]: общая ошибка: 1364 поле " код " не имеет значение по умолчанию (SQL: insert into
coupons
(updated_at
,created_at
) ценности (2019-12-23 14:06:02, 2019-12-23 14:06:02))
Я сделал некоторую отладку и вижу, что она исходит из этого следующего блока кода, но не могу сказать, почему.
if ($customer && is_null($customer->referral_code)) {
$coupon = new Coupon;
$coupon->generateReferralCoupon($customer);
$coupon->save();
$customer->referral_code = $coupon->code;
$customer->save();
}
Миграция для добавления referral_code
ниже.
class AddReferralInfoToShopUsersTable extends Migration
{
public function up()
{
Schema::table('shop_users', function (Blueprint $table) {
$table->text('referral_code')->nullable();
$table->integer('referral_uses')->nullable();
$table->integer('referral_revenue')->nullable();
$table->index(['referral_code']);
});
}
}
У вопроса есть решение - Посмотреть?

Источник

Источник
Ответы - Laravel: ошибка SQL при использовании блока кода для установки поля на объекте customer / Laravel: SQL error when using block of code to set field on customer object
Является ответом!

23.12.2019 11:30:12
Глядя на код ошибки, кажется, что вы пропустили присвоение code
в заполняемый массив в code
вы должны использовать:
Coupon

вот оно что! спасибо @marcin
Помочь в развитии проекта: