Dateien einem Node zuordnen
Eingetragen von gutekunst (174)
am 10.05.2014 - 07:49 Uhr in
am 10.05.2014 - 07:49 Uhr in
Hi,
folgende Problemstellung: Es gibt einen Node "Wettbewerb A" nun sollen User die Möglichkeit haben Fotos upzuloaden die dann automatisch Node A zugeordnet werden und dann über ein View angezeigt werden können. Mit welchen Modulen ließe sich das lösen? Mein Ansatz wäre jetzt einen weiteren Inhaltstyp "Fotos zu Wettbewerb A" zu erstellen und dort einen festen Taxonomyterm "Wettbewerb A" zu setzen. Den müsste ich aber für die User am Besten irgendwie ausblenden. Oder gibts eine Möglichkeit, dass User zu einem bereits erstellten Node noch Fotos hochladen können?
LG
- Anmelden oder Registrieren um Kommentare zu schreiben
Mittels entityreference und
am 10.05.2014 - 08:00 Uhr
Mittels [do:entityreference] und [do:entityreference_prepopulate] kannst Du die Bild-Nodes mit dem Wettbewerb verknüpfen. Die lassen sich auch über Views zum Wettbewerb anzeigen.
wla schriebMittels
am 10.05.2014 - 09:03 Uhr
Mittels [do:entityreference] und [do:entityreference_prepopulate] kannst Du die Bild-Nodes mit dem Wettbewerb verknüpfen. Die lassen sich auch über Views zum Wettbewerb anzeigen.
Danke für den Hinweis! Verstehe nur nicht ganz wie ich das Einrichte. Habe nun dem Inhaltstyp "Wettbewerb A"ein entity field hinzugefügt und dort als Zieltyp den Inhaltstyp "Fotos zum Wettbewerb A" hinzugefügt. War das korrekt?
UPDATE: Ok ich denke richtig ist es genau andersherum. D.h. ich adde dem Inhaltstyp "Fotos von Wettbewerb A" ein entity field mit dem Zieltyp "Node" und wähle dort dann "Wettbewerb A" aus. Nun ist nur noch die Frage wie bekomm ich das View so hin, dass es automatisiert immer die Fotos die dem gerade aufgerufenen Node zugeordnet sind anzeigt. Über Relations?
Update 2: Gibts eine Möglichkeit, dass die User dieses entity field nicht beim Erstellen des Nodes sehen? Da könnten die ja sonst sonstwas eintragen... ungut!
Bei den Beziehungen
am 10.05.2014 - 08:57 Uhr
Bei den Beziehungen (Relationship) kannst Du bei einer Referenz aussuchen in welcher Richtung die Beziehung wirken soll also entwerden auf alle Elemente, die referenzieren oder auf alle, die referenziert werden. Einfach mal damit experimentieren.
wla schriebBei den
am 10.05.2014 - 09:08 Uhr
Bei den Beziehungen (Relationship) kannst Du bei einer Referenz aussuchen in welcher Richtung die Beziehung wirken soll also entwerden auf alle Elemente, die referenzieren oder auf alle, die referenziert werden. Einfach mal damit experimentieren.
Danke werds mal versuchen! Aber schlussendlich muss zusätzlich zur Beziehung einen Kontextfilter setzen oder?
Gibts eine Möglichkeit, dass die User dieses entity field nicht beim Erstellen des Nodes sehen? Da könnten die ja sonst sonstwas eintragen... ungut!
Hi, das View habe ich nun
am 12.05.2014 - 21:33 Uhr
Hi,
das View habe ich nun hinbekommen! Man muss die Relation (Beziehung) " Entity Reference: Entität, die verweist " setzen und als Kontextfilter nehme ich die Node-ID aus der url.
Nun stellen sich mir noch folgende Fragen:
a) Wenn ich nun einen Wettbewerb B erstelle muss ich leider ja auch einen neuen Inhaltstyp "Fotos zu Wettbewerb B" erstellen und in diesem dann die entity_reference auf "Wettbewerb B" setzen, damit die Fotos korrekt zugeordnet werden. Gibts eine Möglichkeit das zu automatisieren? Z.B. die entity_reference automatisch setzen je nachdem von welchem Node aus z.B. "Wettbewerb B" der User sein Foto hochlädt.
Hoffe ich habe mich verständlich ausgedrückt?!
b) Gibt es eine einfache Lösung bestimmte Felder während der Node Erstellung für den User auszublenden?
Der Inhaltstyp sollte für
am 13.05.2014 - 07:37 Uhr
Der Inhaltstyp sollte für alle Wettbewerbe gleich sein. Durch die Referenz auf den Wettbewerb kannst alle Fotos selektieren, die zu einem bestimmten Wettbewerb gehören.
wla schrieb Der Inhaltstyp
am 13.05.2014 - 09:40 Uhr
Der Inhaltstyp sollte für alle Wettbewerbe gleich sein. Durch die Referenz auf den Wettbewerb kannst alle Fotos selektieren, die zu einem bestimmten Wettbewerb gehören.
Ja für die Wettbewerbe gibts ein Inhaltstyp, aber für die Fotos brauch ich jeweils einen neuen Inhaltstyp oder:
Denn ich ich muss doch die Referenz zum "Wettbewerb A2 des Nodes "Fotos zu Wettbewerb A" beim Erstellen selbst festlegen (Ich kann das nicht den Usern überlassen) bzw. ich wähle bei diesem Inhaltstyp einen Standardwert aus z.B. Wettbewerb A und blende das Feld während der Node-Erstellung aus. D.h. alle "Fotos zum Wettbewerb A"-Nodes werden Wettbewerb A zugeordnet.
Nun kommt aber Wettbewerb B ins Spiel... Nun kann ich ja schlecht den Inhaltstyp "Fotos zu Wettbewerb A" auf die Referenz "Wettbewerb B" setzen, sondern müsste einen neuen Inhaltstyp "Fotos zu Wettbewerb B" erstellen. Oder hab ich da nen denkfehler?
LG
Der Inhaltstyp ist
am 13.05.2014 - 12:46 Uhr
Der Inhaltstyp ist "Wettbewerbsfoto". Bei der Erstellung wird automatisiert die Referenz eingetragen und gut ist. Über das wie kann man sich dann noch Gedanken machen. Da gibt es einmal verschiedene Prepopulate Module, mit denen man das Feld vorausfüllt. Über einen hook_form_alter könnte man darüber hinaus das Feld auf nicht beschreibbar setzen. Es braucht also nur einen Inhaltstyp.
Sorry dein Tipp ganz am
am 13.05.2014 - 19:23 Uhr
Sorry dein Tipp ganz am Anfang mit dem prepop-Modul hatte ich ganz übersehen!
Wie funktionieren diese Prepopulate Module? Aus der url "node/add/wettbewerbsfoto" die ich auf den Nodes der Wettbewerbe, A, B etc. verlinke als "add photo" kann ja nicht der Wettbewerbsname entnommen werden, sondern die url bleibt ja für jeden Wettbewerb gleich?
LG
Super Sache! Ich kann nur
am 13.05.2014 - 20:15 Uhr
Super Sache! Ich kann nur dieses Video empfehlen:
https://www.youtube.com/watch?v=z9C4Uf6euLY
hier wirds gut erklärt! Ich habe die Sache nun auch hinbekommen, allerdings funktioniert es nur per NodeID gibts eine Möglichkeit, dass er auch aus dem Nodetitel die entity-reference setzt?
LG
Und noch eine Frage in Bezug
am 10.08.2014 - 10:20 Uhr
Und noch eine Frage in Bezug entity reference. Gibt es die Möglichkeit dass wenn eine bestimmte reference vorliegt in meinem Fall eine bestimmte Node-Id dass ein Feld im add/node Formular ein oder ausgeblendet wird? D.h. wenn Leute von Node X kommend ein neuen content erstellen sollen andere Felder ausgefüllt werden als wenn sie vom node y kommen...
Lg
Das wirst Du vermutlich
am 10.08.2014 - 11:07 Uhr
Das wirst Du vermutlich selbst codieren müssen. Du könntest in einem eigenen Modul oder in der template.php des eigenen Themes die Funktion hook_form_alter implementieren. Damit kannst Du Eingabeformulare, die Drupal ausliefert, vor der Anzeige modifizieren, also Felder ausblenden oder vor ausfüllen. Dazu mußt Du Dich allerdings in die Drupal Form-API einarbeiten, damit Du die Struktur eines Drupal Formulars verstehst, um es korrekt ändern zu können.
Hi,ich habe noch eine Frage
am 27.09.2014 - 10:22 Uhr
Hi,
ich habe noch eine Frage zu dieser Thematik. Ich habe jetzt zwei Inhaltstypen denen mittels der entity-reference nodes zugeordnet werden. Wie könnte ich dafür sorgen, dass entweder nach einer bestimmten Zeit, oder eben manuell keine weitere Zuordnung für diese entity-reference mehr zulässig ist? Sprich z.B. Wettbewerb 1 werden Nodes (Fotos) zugeordnet wenn der vorbei ist sollte das jedoch am besten automatisch nicht mehr möglich sein.
LG
Hänge in das entsprechende
am 27.09.2014 - 10:30 Uhr
Hänge in das entsprechende Formular eine eigene Validierungsroutine, die feststellt, ob die Referenz noch erlaubt ist. Auch diese Funktion müßtest Du selbst schreiben, hast aber dann alle Möglichkeiten. In dieser Routine könntest Du den Referenznode laden und dort vorhandene Informationen auswerten. Falls der inzwischen geschlossen ist (das könnte etwa an einem Boolean-Feld festgemacht sein), gibst Du eine Fehlermeldung zurück. Dann wird dieses Foto nicht mit dieser Referenz gespeichert.