Мне нужна помощь с моим приложением Laravel, очередь прерывается (выдает смешные ошибки) на сервере Digital Ocean, но работает отлично и быстро на моем локальном сервере. Ошибка на сервере часто изменяется от красноречивой ошибки до неопределенной переменной.
В сообщении об ошибке говорится: «Общая ошибка: 1364 Поле 'user_id' не имеет значения по умолчанию ..."
вот его изображение
Тем не менее, это значение просто отлично вписывается в мои локальные данные.
Вот код
public function saveEmailsIntoDb($id)
{
$list = EmailList::where('job_id',$id)->first();
$contents = file(public_path('files/'.$list->stored_file_name), FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
foreach ($contents as $value)
{
Email::create([
'user_id' => $list->user_id,
'email_list_id' => $list->id,
'email' => $value
]);
}
$credits = count($contents);
User::where('id',$list->user_id)->decrement('credits', $credits);
unlink(public_path('files/'.$list->stored_file_name));
EmailList::where('stored_file_name',$list->stored_file_name)
->update(['is_deleted' => 1]);
return $list->id;
}
Я запускаю apache на своем локальном компьютере, я настроил nginx на Digital Ocean.
Код работает время от времени (случайным образом), но выдает эту ошибку в большинстве случаев. Драйвер очереди является базой данных.