Am Looping Lehrer Beziehung auf Vorlage CoursePage.ss
aber wenn ich versuche, diese Beziehung teachers
innerhalb CouresePage_details.ss
funktioniert nicht. Mache etwas falsch.Silverstripe Beziehung ist nicht auf Details Seite
Ich habe zwei Modelle Courses
und Teachers
Course
können viele teachhers habenTeacher
kann man natürlich
Courses.php
class Courses extends DataObject
{
private static $many_many = array(
'Teachers' => 'Teachers',
);
}
haben
Teachers.php
class Courses extends DataObject
{
private static $belongs_many_many = array(
'Courses ' => 'Courses ',
);
}
CoursesPage.php
class CoursesPage extends Page
{
}
class CoursesPage_Controller extends Page_Controller
{
public static $allowed_actions = array(
'details'
);
// Show specific course
public function details(SS_HTTPRequest $request)
{
$c= Courses::get()->byID($request->param('ID'));
if(!$c) {
return $this->httpError(404, "Courses not found");
}
return array(
'Courses' => $c,
);
}
// Courses list
public function CoursesList()
{
$c = Courses::get()->sort('Featured', 'DESC');
return $c;
}
}
CoursesPage.ss
In dieser Datei ich nur Kurse Schleife, nichts Wichtiges. Hier loopiere ich die Liste der Kurse und Lehrer. Hier arbeiten die Lehrer, die perfekt arbeiten, arbeiten nicht an der Detailvorlage.
CoursesPage_details.ss
ist hier Problem. Wenn ich Details über spezifisches course
zeige, möchte ich Schleife teachers
, die mit diesem Kurs verbunden ist, aber ich bekomme alle Zeit NULL
Rückkehr Teachers does not exist
. Sieht so aus, als ob es nicht im Umfang ist.
<section class="course-details">
<h2>$Courses.Name</h2> <!-- Work -->
<p>$Courses.Descr</p>
<ul class="teachers-list">
<% if $Teachers %> <!-- Not work here, but on CoursePage.ss work -->
<% loop $Teachers %>
$FirstName
<% end_loop %>
<% else >
Teachers does not exist
<% end_if %>
</ul>
</section>
Dank seiner Arbeit. – Ivan