Я работаю с Laravel Backpack CRUD, и у меня есть поле select2_from_ajax, в котором необходимо отображать цены на продукты на основе выбора клиента. разные клиенты получают разные цены, которые я сейчас использую
public function fetchProductPrice()
{
$formData = request()->input('form');
$customerIdField = collect($formData)->firstWhere('name', 'customer_id');
$productIdField = collect($formData)->firstWhere('name', 'items[0][product_id]');
$customerId = $customerIdField['value'];
$productId = $productIdField['value'];
$customer = \App\Models\Customers::find($customerId);
$priceSettingId = $customer->price_setting_id;
// dd([
// 'customerId' => $customerId,
// 'productId' => $productId,
// 'priceSettingId' => $priceSettingId,
// 'query' => \App\Models\Price::where('price_setting_id', $priceSettingId)
// ->where('product_id', $productId)
// ->get()
// ]);
// $price = \App\Models\Price::where('price_setting_id', $priceSettingId)
// ->where('product_id', $productId)
// ->first();
// return [
// 'id' => $price->id,
// 'text' => $price->nominal
// ];
return $this->fetch(\App\Models\Price::class)
->where('price_setting_id', $priceSettingId)
->where('product_id', $productId);
}
буду благодарен за любую помощь, поскольку я впервые пользуюсь этим сайтом.
используя:
return $this->fetch(\App\Models\Price::class)
->where('price_setting_id', $priceSettingId)
->where('product_id', $productId);
возвращает цену, которую я хотел для некоторых необходимых продуктов, но некоторые из них возвращают пустой ответ.
используя метод ниже, результатом является выборка мне нужно было, но я не могу его выложить
return [
'id' => $price->id,
'text' => $price->nominal
];
Изменить:
я решил проблему с запросом, используя такую пользовательскую функцию выборки
return $this->fetch([
'model' => \App\Models\Price::class,
'searchable_attributes' => ['nominal'],
'paginate' => 10,
'query' => function($model) use ($priceSettingId, $productId) {
return $model->where('price_setting_id', $priceSettingId)
->where('product_id', $productId);
}
]);
а не только
return $this->fetch(\App\Models\Price::class)
->where('price_setting_id', $priceSettingId)
->where('product_id', $productId);
Подробнее здесь: https://stackoverflow.com/questions/793 ... ned-ajax-v
Laravel Backpack v6 CRUD: поле select2_from_ajax не отображает возвращаемые значения AJAX ⇐ Php
Кемеровские программисты php общаются здесь
1736610197
Anonymous
Я работаю с Laravel Backpack CRUD, и у меня есть поле select2_from_ajax, в котором необходимо отображать цены на продукты на основе выбора клиента. разные клиенты получают разные цены, которые я сейчас использую
public function fetchProductPrice()
{
$formData = request()->input('form');
$customerIdField = collect($formData)->firstWhere('name', 'customer_id');
$productIdField = collect($formData)->firstWhere('name', 'items[0][product_id]');
$customerId = $customerIdField['value'];
$productId = $productIdField['value'];
$customer = \App\Models\Customers::find($customerId);
$priceSettingId = $customer->price_setting_id;
// dd([
// 'customerId' => $customerId,
// 'productId' => $productId,
// 'priceSettingId' => $priceSettingId,
// 'query' => \App\Models\Price::where('price_setting_id', $priceSettingId)
// ->where('product_id', $productId)
// ->get()
// ]);
// $price = \App\Models\Price::where('price_setting_id', $priceSettingId)
// ->where('product_id', $productId)
// ->first();
// return [
// 'id' => $price->id,
// 'text' => $price->nominal
// ];
return $this->fetch(\App\Models\Price::class)
->where('price_setting_id', $priceSettingId)
->where('product_id', $productId);
}
буду благодарен за любую помощь, поскольку я впервые пользуюсь этим сайтом.
используя:
return $this->fetch(\App\Models\Price::class)
->where('price_setting_id', $priceSettingId)
->where('product_id', $productId);
возвращает цену, которую я хотел для некоторых необходимых продуктов, но некоторые из них возвращают пустой ответ.
используя метод ниже, результатом является выборка мне нужно было, но я не могу его выложить
return [
'id' => $price->id,
'text' => $price->nominal
];
Изменить:
я решил проблему с запросом, используя такую пользовательскую функцию выборки
return $this->fetch([
'model' => \App\Models\Price::class,
'searchable_attributes' => ['nominal'],
'paginate' => 10,
'query' => function($model) use ($priceSettingId, $productId) {
return $model->where('price_setting_id', $priceSettingId)
->where('product_id', $productId);
}
]);
а не только
return $this->fetch(\App\Models\Price::class)
->where('price_setting_id', $priceSettingId)
->where('product_id', $productId);
Подробнее здесь: [url]https://stackoverflow.com/questions/79348401/laravel-backpack-v6-crud-select2-from-ajax-field-not-displaying-returned-ajax-v[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия