public function getProductById(Request $request)
{
$response = '';
$product = Product::find($request->productId);
$groups = Group::all();
foreach ($groups as $group) {
if ($group->id == $product->group_id) {
//exclude this record
$response .= "<option value='" . $group->id . "'>";
$response .= $group->group_name;
$response .= "</option>";
}
}
}
Это моя функция. Я получаю запись о продукте, отправляя идентификатор продукта, и из него я получаю соответствующую групповую запись продукта. И я просмотрел все группы, и я хочу исключить запись группы, которая это group_id, который я получил из таблицы продуктов. Я действительно застрял здесь. Спасибо за вашу помощь.
@Marleen напиши как ответ
Я думаю, вы ищете это:
public function getProductById(Request $request)
{
$response = '';
$product = Product::find($request->productId);
$groups = Group::all();
foreach ($groups as $group) {
if ($group->id != $product->group_id) {
//exclude this record
$response .= "<option value='" . $group->id . "'>";
$response .= $group->group_name;
$response .= "</option>";
}
}
}
Лучше не получать запись в первую очередь
public function getProductById(Request $request)
{
$product = Product::find($request->productId);
$groups = Group::where('id','!=' $product->group_id)->get();
foreach ($groups as $group) {
$response .= "<option value='" . $group->id . "'>";
$response .= $group->group_name;
$response .= "</option>";
}
}
}
а потом лучше перебирать группы в блейд-файле, а не здесь
@foreach($groups as $group)
<option value = "{{ $group->id }}">{{ $group->name }}</option>
@endforeach
Заменить
if ($group->id == $product->group_id) {
наif ($group->id != $product->group_id) {
?