Laravel 5.3: Нарушение ограничения целостности (работает на некоторых установках) - PullRequest
0 голосов
/ 08 ноября 2018

Я пытаюсь выполнить настройку самоссылки, чтобы пользователь мог добавить объект идентичного типа в свою таблицу отношений.

Он отлично работает на моей локальной машине и в моей промежуточной среде, но на производстве он продолжает выдавать ошибку. Местные и промежуточные прогоны php 7 и производственные прогоны php 5; но я не думаю, что ошибка связана с этим?

Я действительно не могу понять, почему - поэтому я очень ценю любую помощь!

Я пометил конкретную строку с ( Ошибка ), которая вызывает ошибку.

Контроллер: BasicCalculationController.php

$bcItem   = BasicCalculation::with( 'unit' )->find( $id );

Error: $basicCalculation->basicCalculation()->save( $bcItem, [
                    'organization_id'      => $org->id,
                    'quantity'             => $quantity
] );

Модель BasicCalculation.php :

public function basicCalculation() {
    return $this->belongsToMany( 'App\Models\BasicCalculation', 'calculations_basic_calculations', 'calculation_id', 'basic_calculation_id' )->withPivot( 'organization_id', 'quantity' )->withTimestamps();
}

Отлично работает на локальной + постановке. Не работаю на производстве.

Ошибка, возвращаемая из MySQL:

SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails (`calcueasy`.`calculations_basic_calculations`, CONSTRAINT `calculations_basic_calculations_calculation_id_foreign` FOREIGN KEY (`calculation_id`) REFERENCES `calculations` (`id`)) (SQL: insert into `calculations_basic_calculations` (`basic_calculation_id`, `calculation_id`, `created_at`, `organization_id`, `quantity`, `updated_at`) values (560, 38, 2018-11-08 10:06:13, 1, 22.00000, 2018-11-08 10:06:13)) in C:\laragon\www\CalcuEasy\vendor\laravel\framework\src\Illuminate\Database\Connection.php:770

Обновление:

Производственный стол:

enter image description here

Постановочный стол:

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...