Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Module › Views ›

Node reference URL Widget: "Neuen (Child)Node erstellen" Link ausblenden wenn schon ein Child existiert

Eingetragen von docmiller (89)
am 25.03.2010 - 19:34 Uhr in
  • Views
  • Drupal 6.x

Ich habe node relativity aufgegeben, da es damit zuuuu kompliziert wurde und habe mich CCK Node Reference zugewandt.

Per Node Reference URL Widget habe ich einen bequemen Link am Ende der Node "Jetzt einen neuen (Child)Node erstellen. Dann wird, wie vorgesehen, in dem Childnode das Feld "node reference" automatisch ausgefüllt.

Per back reference teile ich dem Parentnode per CCK Feld dann mit, welches seine Child(s) sind.

Jetzt würde ich gerne nur einen Child erlauben, also den bequemen Link am Ende der Node ausblenden, wenn schon das CCK Feld "Meine Childnodes" beim Parent ausgefüllt ist. Bei "normalen" CCK Feldern gibt es ja die Option die Anzahl der Werte zu beschränken; diese fehlt hier leider.

Edit:
Leider ist die Lösung (Kommentar im Thread unten (http://www.drupalcenter.de/node/26365#comment-95308)) über die Einschränkung mit Views in meinem Falle nicht tragbar. Da ich die Node Reference Felder der Childs per Backreference auf den Parent gespiegelt habe, konnte ich einfach einen View erzeugen, der mit alle Nodes ausgibt bei denen das Feld "was ist mein Child" leer ist. Die zu referenzierenden Nodes sind also durch die Filtereinstellungen des Views beschränkt. Nur leider finden diese Gültigkeitsprüfung nach den Viewkriterien auch dann statt, wenn ich eine Childnode bearbeite. Dann ist das Feld "was ist mein Child" beim Parent ja schon durch das Modul Backreference gefüllt worden; somit ist der Parent keine gültiger Parent mehr und ich kann die Childnode nicht speichern - bekomme ein Fehlermeldung "Parent kein gültiger Parent" :(

Für einen einmalige Erstellung von Childs reicht es aber auf jeden Fall!

‹ [GELÖST] CCK, Link zu einem Emailformular? CCK-Feld verschlüsseln ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Fehlt nicht, sonder ist andersrum

Eingetragen von r4s6 (1383)
am 25.03.2010 - 23:29 Uhr
docmiller schrieb

Jetzt würde ich gerne nur einen Child erlauben, also den bequemen Link am Ende der Node ausblenden, wenn schon das CCK Feld "Meine Childnodes" beim Parent ausgefüllt ist. Bei "normalen" CCK Feldern gibt es ja die Option die Anzahl der Werte zu beschränken; diese fehlt hier leider.

Das fehlt nicht, sondern macht in diese Richtung keinen Sinn.
Denk daran; Mit Nodereference, Teils Du eben dem Child mit wer seine Parants sind, und nicht umgekehrt. Du kannst sehr wohl einschränken wieviele Parents ein Child haben kann.

PS: Du bist hier nicht in China wo den Eltern nur ein Kinder laubt ist. *scnr*

  • Anmelden oder Registrieren um Kommentare zu schreiben

verstehe, verstehen... Ich

Eingetragen von docmiller (89)
am 26.03.2010 - 11:23 Uhr

verstehe, verstehen...

Ich "spiegel" das CCK Feld ja auf seinen Parent per backreference.
Ich dachte vielleicht an ein Lösung nach dem Schema:

irgendwas in die node-XXX.tpl gehackt:

<?php
if ( CCK Feld "Was ist mein Child" einen gültigen Wert hat
then (blende den Link von Node Reference URL Widget aus)
>

Diese Option "Anzahl von Werten" steht leider in dem Node Reference URL Widget nicht zu Verfügung. Ist aber auch eigentlich egal, da der Link weg sein oder ausgeblendet sein soll, wenn ein CCK Feld beim Parent einen Wert hat.

ps: Ich musste echt schmunzeln

  • Anmelden oder Registrieren um Kommentare zu schreiben

Noch mal zu Back References

Eingetragen von r4s6 (1383)
am 31.03.2010 - 10:19 Uhr

Ich gehe noch immer davon aus, dass du hierfür das Modul Node Relationships verwendest. auf der Projektseite steht doch...

Node Relationship schrieb

This module provides a method to display back reference views on referred nodes. Back reference definitions are taken from the "Content types that can be referenced" option in the global settings section of node reference fields. Note that you should configure this option explicitly even if you use a view for the node reference field.

These back references do not need additional data stored in the database. Instead, views with the proper relationships are used to join the node reference field data with the corresponding nodes in the database. These views can then be used from the referred content types to provide a list of referrer nodes. The Node Relationships module provides a default view that you can modify and/or clone (recommended) should you need to add more fields, filters or change any other option to suit your needs.

Wenn mich mein English nicht täuscht, dann wird hier kein echtes CCK-Feld erzeugt, sonder nur eine Query, die die Childs untersucht. Demnach müsste dein Code singemäss wie folgt aussehen:

<?php
if (ein Kind hat mich als Vater/Mutter)
then (ich will keins mehr, also sterilisiere mich)
>

  • Anmelden oder Registrieren um Kommentare zu schreiben

Nein, node relationships

Eingetragen von docmiller (89)
am 31.03.2010 - 16:07 Uhr

Nein, node relationships verwende ich nicht.

Ich hatte erst node relativity verwendet und jetzt verwende ich cck node reference + backreference. backreference ist so eingestellt, dass es das Feld "field_noderef" auf das Feld "field_mychild" im Parent "spiegelt".

Node Relationships schaue ich mir jetzt mal an. Mal sehen was sich damit alles anstellen lässt.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Wie so oft ist die Lösung

Eingetragen von docmiller (89)
am 06.04.2010 - 10:57 Uhr

Wie so oft ist die Lösung auch hier views.

Einfach die zu referenzierenden Beiträge durch einen View einschränken und das CCK Feld anweisen diesen zu verwenden.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Drupal CMS installieren
  • [erledigt]MP3 in Drupal 10 einbinden
  • (gelöst)Drupal 11 installieren
  • Titel ausblenden
  • Ich brauche dringen Hilfe zu Updates oder ggf. wwie geht Composer?
  • Dynamische Ansicht von Seiteninhalt (als Tabelle?)
  • Vergabe von Berechtigungen für bestimmte Rollen; mir fehlt der Haken bzw. das „Veröffentlicht“
  • Medien und andere Daten mit Feeds von Drupal 7 auf Drupal 10 migrieren
  • Rolle erstellen nicht zu finden
  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
Weiter

Neue Kommentare

  • Verwende doch das Tag dafür,
    vor 3 Wochen 4 Stunden
  • Guckst du hier: step by step
    vor 2 Wochen 6 Tagen
  • Guckst du hier: step by step
    vor 2 Wochen 6 Tagen
  • Ich habe ja keine Angst vor
    vor 4 Wochen 2 Tagen
  • Ist grundsätzlichmachbar – aber nichts für „einfach mal schnell“
    vor 4 Wochen 4 Tagen
  • Vielen Dank erst einmal, aber
    vor 4 Wochen 6 Tagen
  • Du hast die "Trusted host
    vor 4 Wochen 6 Tagen
  • Bitte genauer den aktuellen Lösungs-Ansatz beschreiben
    vor 6 Wochen 5 Tagen
  • Git und rsync sind die wichtigsten Werkzeuge
    vor 7 Wochen 1 Tag
  • Arrrrg. Nix Tabelle :-D /*
    vor 11 Wochen 4 Tagen

Statistik

Beiträge im Forum: 250284
Registrierte User: 20509

Neue User:

  • Marvinkep
  • RandallFloop
  • Inga GuAph

» Alle User anzeigen

User nach Punkten sortiert:
wla9464
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 25 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association