Ember.js verschachtelte Routen

7

Prost! Ich habe Routen:

%Vor%

Und eine Vorlage:

%Vor%

Sitze ist ein Attribut des Tour-Objekts:

%Vor%

Und ich verlängere meine TourSeats Route wie folgt:

%Vor%

Frage: Wie man die Sitze der Tour in der Schablone rendert?

UPDATE:

Mein Gerät sieht so aus:

%Vor%

Und ich habe meine Route bis dahin erweitert:

%Vor%

Und in Vorlage:

%Vor%

UPDATE 2:

%Vor%

und es gibt undefined zurück. Nach einiger Fehlersuche habe ich herausgefunden, dass es keine ID in Params gibt und Params leer ist, deshalb kann ich in der TourSeatsRoute-Funktion nicht das richtige Modell finden.

    
xamenrax 01.02.2013, 08:33
quelle

3 Antworten

18

Wenn Sie ember-1.0-pre.4 + verwenden, werden die Parameter nur für die angegebene Route und nicht für die gesamte URL zurückgegeben. Es gibt einige Diskussionen hierüber .

Ich glaube, der gewünschte Ansatz zu diesem Zeitpunkt besteht darin, this.modelFor zu verwenden und den Namen der übergeordneten Ressource zu übergeben, die Sie in der übergeordneten Route eingerichtet haben. In deinem Fall wäre es also:

%Vor%     
rossta 06.02.2013, 05:20
quelle
2

Sie müssen das Modell nur aus der Methode model zurückgeben:

%Vor%

Und dann können Sie in Ihrer Vorlage Folgendes tun: controller ist der Kontext:

%Vor%     
Wildhoney 01.02.2013 12:08
quelle
1

Ich bin noch neu bei EmberJS, aber ich hätte meinen Router und Routen so geschrieben.

Ich bin mir nicht sicher, ob Sie die Post Ressource in die Posts Ressource einbinden müssen. Beachten Sie den doppelten Plural in ToursSeatsRoute

%Vor%

Dies würde Ihnen die folgenden URLs geben:

/ tours - Sie könnten dies einem ArrayController zuordnen

/ tours /: tour_id / seats - Sie könnten dies einem ObjectController zuordnen

%Vor%

Probieren Sie es aus? Oder setzen Sie Ihren Code vielleicht in ein JSFiddle?

    
ianpetzer 04.02.2013 11:57
quelle