Я новичок в этом красноречивом ларавеле, так что я обнажен со мной. Я выполняю функцию поиска для оплаты . Все хорошо, пока мне не нужно внутреннее присоединение к таблице контракта , чтобы я мог вывести $ платеж-> contract-> account_no в результате поиска. < Br /> мне просто нужно преобразовать этот SQL в Elofent ( Я включил только account_no < /strong>, так как это столбец, который мне нужно получить контракт )
SELECT
tbt_contracts.account_no , tbt_payments.payment_type, tbt_payments.payment_mode, tbt_payments.payment_date, tbt_payments.payment_amount, tbt_payments.payment_due_date,
tbt_payments.payee_name
FROM tbt_payments
INNER JOIN tbt_contracts ON tbt_payments.contract_id = tbt_contracts.id
WHERE tbt_contracts.account_no LIKE '%test%'
< /code>
платежная модель < /p>
public function contract()
{
return $this->belongsTo(Contract::class);
}
< /code>
Модель контракта < /p>
public function payments()
{
return $this->hasMany(Payment::class);
}
< /code>
Платежный контроллер (когда я нажимаю кнопку поиска) < /p>
$filters = [];
//account_no (ERROR)
!is_null($request->account_no) ? array_push($filters, ['account_no', 'like','%'.$request->account_no.'%']) : null;
//payment_type
!is_null($request->payment_type) ? array_push($filters, ['payment_type', 'like','%'.$request->payment_type.'%']) : null;
//payment_mode
!is_null($request->payment_mode) ? array_push($filters, ['payment_mode', 'like','%'.$request->payment_mode.'%']) : null;
//payee_name
!is_null($request->payee_name) ? array_push($filters, ['payee_name', 'like','%'.$request->payee_name.'%']) : null;
return view('transaction.payment.paymentlist', [
'payments' => Payment::where($filters)->orderBy('id')->paginate(10),
'payment_modes' => LogicCONF::getDropDownJson('payment_mode.json'),
'payment_types' => LogicCONF::getDropDownJson('payment_type.json'),
]);
< /code>
Рабочий код (работает без таблицы, ошибки с соединением таблицы) < /p>
return view('transaction.payment.paymentlist', [
'payments' => Payment::where($filters)->orderBy('id')->paginate(10),
]);
< /code>
db facade: < /p>
Я попробовал DB Facade. Моя проблема в этом заключается в том, что я не могу использовать или позвонить public function внутри моей модели оплаты. (Я даже не пробовал присоединиться к таблицам) < /p>
$payments = DB::table("tbt_payments")->orderBy('id')->paginate(10);
Подробнее здесь: https://stackoverflow.com/questions/751 ... l-eloquent
Внутренняя таблица соединения (обратная) с использованием красноречивого Laravel ⇐ Php
Кемеровские программисты php общаются здесь
1740448611
Anonymous
Я новичок в этом красноречивом ларавеле, так что я обнажен со мной. Я выполняю функцию поиска для [b] оплаты [/b]. Все хорошо, пока мне не нужно внутреннее присоединение к таблице [b] контракта [/b], чтобы я мог вывести [b] $ платеж-> contract-> account_no [/b] в результате поиска. < Br /> мне просто нужно преобразовать этот SQL в Elofent ( Я включил только [b] account_no < /strong>, так как это столбец, который мне нужно получить контракт [/b] )
SELECT
tbt_contracts.account_no , tbt_payments.payment_type, tbt_payments.payment_mode, tbt_payments.payment_date, tbt_payments.payment_amount, tbt_payments.payment_due_date,
tbt_payments.payee_name
FROM tbt_payments
INNER JOIN tbt_contracts ON tbt_payments.contract_id = tbt_contracts.id
WHERE tbt_contracts.account_no LIKE '%test%'
< /code>
платежная модель < /p>
public function contract()
{
return $this->belongsTo(Contract::class);
}
< /code>
Модель контракта < /p>
public function payments()
{
return $this->hasMany(Payment::class);
}
< /code>
Платежный контроллер (когда я нажимаю кнопку поиска) < /p>
$filters = [];
//account_no (ERROR)
!is_null($request->account_no) ? array_push($filters, ['account_no', 'like','%'.$request->account_no.'%']) : null;
//payment_type
!is_null($request->payment_type) ? array_push($filters, ['payment_type', 'like','%'.$request->payment_type.'%']) : null;
//payment_mode
!is_null($request->payment_mode) ? array_push($filters, ['payment_mode', 'like','%'.$request->payment_mode.'%']) : null;
//payee_name
!is_null($request->payee_name) ? array_push($filters, ['payee_name', 'like','%'.$request->payee_name.'%']) : null;
return view('transaction.payment.paymentlist', [
'payments' => Payment::where($filters)->orderBy('id')->paginate(10),
'payment_modes' => LogicCONF::getDropDownJson('payment_mode.json'),
'payment_types' => LogicCONF::getDropDownJson('payment_type.json'),
]);
< /code>
Рабочий код (работает без таблицы, ошибки с соединением таблицы) < /p>
return view('transaction.payment.paymentlist', [
'payments' => Payment::where($filters)->orderBy('id')->paginate(10),
]);
< /code>
db facade: < /p>
Я попробовал DB Facade. Моя проблема в этом заключается в том, что я не могу использовать или позвонить [b] public function [/b] внутри моей модели оплаты. (Я даже не пробовал присоединиться к таблицам) < /p>
$payments = DB::table("tbt_payments")->orderBy('id')->paginate(10);
Подробнее здесь: [url]https://stackoverflow.com/questions/75130656/inner-join-table-inverse-using-larvel-eloquent[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия