Нужна помощь для отображения значений массива в блейд с помощью @foreach с моделями отношений - PullRequest
0 голосов
/ 10 октября 2019

У меня есть 4 типа подписок (ежемесячно, 3 месяца, 6 месяцев и ежегодно). Я успешно вставил значение по отношению к моей модели продукта. Теперь мне нужно сделать обновление. Сценарий: пользователь выбирает только два плана подписки в начале, а затем решил добавить больше подписки. В моем редакторе отображается только то, что выбрал пользователь.

 @foreach($product->subscriptions as $subscription)

 <input class="form-check-input" name="availability[]" type="checkbox" value="{{ $row->id }}" checked>
 <label class="form-check-label" for="materialUnchecked"><b>{{ $subscription->name }}</b></label>

 <input type="text" name="price[]" value="{{ $subscription->pivot->price }}">

 @endforeach

Это даст результат: Как я могу отобразить и другие опции, которые не были выбраны ранее. enter image description here

Я хочу, чтобы оставшаяся часть доступности подписки не отображалась, если результат меньше 4. Например, пользователь выбирает только ежемесячно и ежегодно. Теперь в моем редактируемом виде я хочу также отобразить два других (варианты 3 и 6 месяцев), если они хотят что-то добавить. Как это сделать?

1 Ответ

0 голосов
/ 11 октября 2019
 @foreach($subscriptions as $subscription)

   <input class="form-check-input" name="availability[]" type="checkbox" value="{{ $row->id }}" {{in_array($subscription->id, $product->subscriptions->pluck('id')) ? 'checked' : ''}}>
   <label class="form-check-label" for="materialUnchecked"><b>{{ $subscription->name }}</b></label>

   <input type="text" name="price[]" value="{{ $subscription->pivot->price }}">

 @endforeach
...