Внутренняя таблица соединения (обратная) с использованием красноречивого LaravelPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Внутренняя таблица соединения (обратная) с использованием красноречивого Laravel

Сообщение Anonymous »

Я новичок в этом красноречивом ларавеле, так что я обнажен со мной. Я выполняю функцию поиска для оплаты . Все хорошо, пока мне не нужно внутреннее присоединение к таблице контракта , чтобы я мог вывести $ платеж-> 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
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»