Как мне присоединиться ко многим ко многим таблицам, используя NotORM

Я учу НОРМ, чтобы создать простую систему для школы. Я хочу быть в состоянии наградить "Обязательства" для "студентов". Вот моя структура данных:

Мои таблицы:

ученики

  • -studentid (PK) -первое имя-фамилия -дата рождения -vmg -годгруппа

ссылка на сайт

  • -линкид (ПК) -студентид (ФК) -пледид (ФК)

обязательства

  • -pledgeid (PK) -pledgename -pledgeinfo

Код из замечательного учебника по NotORM ( http://www.sitepoint.com/database-interaction-made-easy-with-notorm/) говорит, что я должен сделать это:

<?php
foreach ($books as $book) {
echo "<tr>";
echo "<td>" . $book["title"] . "</td>";
echo "<td>" . $book["author"] . "</td>";
// book_category table joins book and category
$categories = array();
foreach ($book->book_category() as $book_category) {
    $categories[] = $book_category->category["category"];
}
echo "<td>" . join(", ", $categories) . "</td>";
echo "</tr>";
}
?>
  1. Правильна ли моя структура данных для использования NotORM
  2. Как мне перевести пример, чтобы он показал ученикам и какие награды им были присуждены. - Я чувствую, что перепробовал все варианты этого кода и до сих пор не могу заставить его работать.

Спасибо заранее.

1 ответ

Решение

Ключ к вашей проблеме: начиная с Relation-Table (здесь ссылка) и переходя на NotORM, чтобы присоединиться к другим таблицам.

Посмотрите, насколько простым может быть код:

$db->link("pledge.name", $someName)->select("student.firstname, student.lastname");
Другие вопросы по тегам