Edit-Formular eines Content-Types im Edit-Formular eines anderen Content-Types einbinden
am 16.11.2012 - 20:04 Uhr in
Hallo,
folgende Situation:
ich habe mehrere Content-Types, z.B. Orte, Bauwerke, Landschaften, Personen ... - mit jeweils verschiedenen allgemeinen Inhaltsfeldern.
Dazu soll es ggf. zusätzliche Informationen zu den verschiedensten Themen geben, z.B. zu Geschichte, Kultur, Mythologie, Geologie, Architektur ...
Nun könnte man alle diese Zusatzinfo-Felder in die Content-Types einbauen - das würde sehr unübersichtlich werden.
Daher meine Idee, alle diese Infos als eigene Content-Types anzulegen, also Infos-Geschichte, Infos-Geologie usw.
Die Zuordnung ginge über eine Node-Referenz:
entweder bei den Infos, indem ich in einem Auswahlfeld auswähle: diese Info gehört zu jenem (Haupt-)Content,
oder ich kann im Haupt-Content auswählen: zu diesem Content gehört jene Info.
Nun wäre doch folgendes sehr schön:
Zuerst lege ich einen Haupt-Content an, z.B. ein Bauwerk.
Dann lege ich einen Content vom Typ Info-Architektur an, und ordne diesen dem angelegten Bauwerk zu (per Node-Reference).
Wenn ich jetzt wieder in das Edit-Formular des Bauwerks gehe, werden zusätzlich zu den Standard-Feldern des Bauwerks auch die Felder des zugordneten Contents Info-Architektur angezeigt.
So könnte man - wenn der Zuammenhang zwischen den verschiedenen Content-Types einmal hergestellt ist - alle zusammenhängenden Content-Felder übersichtlich in einem Formular bearbeiten.
Hat jemand eine Idee, ob und wie das gehen könnte?
mfG, Michael
- Anmelden oder Registrieren um Kommentare zu schreiben
Hallo Michael, in der
am 18.11.2012 - 02:36 Uhr
Hallo Michael,
in der Annahme, dass du Drupal 7 benutzt: schau dir doch mal http://drupal.org/project/inline_entity_form an. Habe es zwar selber noch nicht benutzt, klingt aber nach dem, was du suchst.
ciao, Ronald
Reinblau eG
Vielen Dank für den Hinweis
am 19.11.2012 - 12:23 Uhr
Dieses Modul ist tatsächlich genau das, was mir vorschwebte, und es funktioniert auch wunderbar.
Ein Problem gab es allerdings: wenn man mit Add existing ... einen schon angelegten anderen Content über das Auto-Complete-Field einbinden will, kam diese Fehlermeldung:
Ein AJAX-HTTP-Fehler ist aufgetreten
HTTP-Rückgabe-Code: 200
...
Offenbar wird das vom devel_themer verursacht - siehe hier:
If it's neither devel nor devel_themer (which is a problem often) you might have to toggle multiple modules to find the root of the problem but views can't help you here.
Also deaktivieren!
Vielleicht interessiert's ja jemanden.
beste Grüße, Michael
Nachtrag:
Das hab erst mal nur beim Anlegen der Inhalte im Backend probiert, noch nicht für die Darstellung mit Views im Frontend.
Nochmal zu inline_entity_form
am 21.11.2012 - 12:54 Uhr
das funkioniert ja wunderbar, jetzt gibt's nur ein anderes Problem:
Ich kann also im Edit-Formular eines Content-Types einen bereits vorhandenen node eines anderen Types zuordnen (Add existing ...),
oder einen neuen erzeugen (Add new ...), der dann auch inhaltlich diesem ersten Type zugeordnet ist - schön.
Nun hab ich alle zugeordneten nodes aufgelistet und kann jeden einzelnen hier bearbeiten und - löschen,
d. h. wenn ich einen node des anderen Types mehreren verschiedenen nodes des Haupt-Contents zugeordnet habe - das war ja der Sinn der Übung -
dann lösche ich den node, und er ist weg - überall und überhaupt.
Das kommt daher, daß im inline_entity_form.module die Funktion entity_delete_multiple aus dem entity.module aufgerufen wird.
Gibt es eine Möglichkeit, da dazwischen zu kommen und statt die Inhalte zu löschen, nur die Zuordnung aufzuheben?
Ich weiß, das ist ja eigentlich die normale Funktionalität eines Node-Reference-Feldes, aber damit hab ich eben die Inhalte nicht im Formular verfügbar.
mfG, Michael