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

  • Dynamische Ansicht von Seiteninhalt (als Tabelle?)
  • Vergabe von Berechtigungen für bestimmte Rollen; mir fehlt der Haken bzw. das „Veröffentlicht“
  • Ich brauche dringen Hilfe zu Updates oder ggf. wwie geht Composer?
  • 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
  • Wie erlaubt man neuen Benutzern auf die Resetseite zugreifen zu dürfen.
  • [gelöst] Anzeigeformat Text mit Bild in einem Artikel, Drupal 11
  • Social Media Buttons um Insteragram erweitern
  • Nach Installation der neuesten D10-Version kein Zugriff auf Website
Weiter

Neue Kommentare

  • Arrrrg. Nix Tabelle :-D /*
    vor 3 Wochen 4 Tagen
  • Textboxen mit Tabelle
    vor 3 Wochen 4 Tagen
  • Du sollst ja auch keine
    vor 3 Wochen 4 Tagen
  • Theme
    vor 3 Wochen 4 Tagen
  • Welches Theme benutzt du
    vor 3 Wochen 5 Tagen
  • Mit Responsive Raster hatte
    vor 3 Wochen 5 Tagen
  • Hallo Alex,um das Häkchen
    vor 3 Wochen 5 Tagen
  • Modul view_unpublished
    vor 4 Wochen 3 Stunden
  • Modul "override node options"
    vor 4 Wochen 21 Stunden
  • Im Grunde ist dass ein
    vor 4 Wochen 3 Tagen

Statistik

Beiträge im Forum: 250270
Registrierte User: 20483

Neue User:

  • Aathivithyah
  • Aoirhic
  • Stevebok

» Alle User anzeigen

User nach Punkten sortiert:
wla9463
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 78 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