Ich habe ein Modell Category
, die viele Documents
hat. Beim Rendern einer Person Category
möchte ich alle untergeordneten documents
in einer sortierbaren Liste per Drag & Drop auflisten. Ich möchte auch einen Doppelklick auf eine beliebige Person document
, um Inline-Bearbeitung für das Dokument zu ermöglichen.Emberjs - Mit CollectionView und ItemController zusammen
Ich habe beide Teile arbeiten auf eigene, aber kann nicht scheinen, herauszufinden, wie Sie sie zusammenführen.
Für die sortierbare Liste verwende ich eine benutzerdefinierte Unterklasse von CollectionView
, um die documents
zu rendern, und nach dem Einfügen des Elements rufe ich das html5sortable jquery-Plugin auf.
Für die Inline-Bearbeitung habe ich einen itemController
für jede document
gerendert gesetzt. Innerhalb der DocumentController
hielt ich Bewerbungsstatus der Bearbeitung des Dokuments.
Ich bin auf der Suche nach einem Einblick, wie Sie die beiden Ansätze kombinieren. Was ich denke, ich brauche, ist eine Möglichkeit, eine itemController
für jede itemView
in der CollectionView
einzurichten. Ich habe den entsprechenden Code unten angegeben.
Danke für jede Hilfe. Schätze es wirklich.
Dank Christen. Das alles macht Sinn, aber scheint nicht für mich zu arbeiten. Ich habe den DocumentsController implementiert, wie Sie es gesagt haben, aber wenn ich 'controller' in der' sortable-item' Vorlage protokolliere, ist der Controller immer noch der 'category' Controller. Hier ist der Aufruf, die CollectionView zu verwenden: {{view App.SortableView contentBinding = "controller.documents"}} Fehle ich etwas? – raytiley
innerhalb der einzelnen Ansicht, die Sie "Inhalt" verweisen möchten. Was passiert, ist, dass der 'DocumentsController' transparent einen' DocumentController' zurückgibt, der um jedes 'Dokument' gewickelt ist. Die 'CollectionView' ist sich dessen nicht bewusst und kümmert sich nicht darum: Sie setzt den Wert, den sie erhält, auf' content'. Wenn Sie möchten, können Sie 'controller' an die' content' -Eigenschaft in Ihrer itemView-Klasse binden. –
Danke Christopher. Ich muss immer noch etwas Offensichtliches vermissen. In meiner Vorlage/Ansicht, wenn ich Inhalt abmelde eine Instanz von App.Document, nicht App.DocumentController, so aus irgendeinem Grund der Documents Controller ist immer noch nur das Dokument, nicht das Steuerelement umhüllt Dokument. Ich werde versuchen, den Code zu manipulieren, den ich habe. Vielen Dank für Ihre Zeit. – raytiley