Идиорм / Париж — Доступ к столбцам распределительной таблицы

Я использую Париж для моего нового проекта …

Допустим, у меня есть 3 таблицы: пользователи, книги и заимствования:

пользователи: идентификатор / имя

книги: id / title

займы: users_id / books_id / loan_date / return_date


В классе Книги:

function users()
{
return $this->has_many_through('Users', 'Borrows');
}

В классе Users:

function books()
{
return $this->has_many_through('User', 'Borrows');
}

Все хорошо, я могу получить доступ к заимствованным книгам для каждого пользователя и список пользователей, которые ранее брали одну книгу, но мне интересно, как мне получить доступ к borrow_date а также return_date столбец / свойство таблицы / класса Борроуза?

0

Решение

Вы можете сделать это с помощью Idiorm (Парижский брат).

User модель:

<?php
class User extends Model {
public static $_table = 'Users';
public static $_id_column = 'id';

function books()
{
return $this->has_many_through('User', 'Borrow');
}

public static function findBooksAndBorrows($id) {
return ORM::for_table('Users')
->join('Borrows', array('Users.id', '=', 'Borrows.users_id'))
->join('Books', array('Borrows.books_id', '=', 'Books.id'));
}
}

В вашем коде:

$booksAndBorrows = User::findBooksAndBorrows(1)->find_array();
echo json_encode($booksAndBorrows);
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]