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

[gelöst]Manuell erzeugte Referenz wird in Inhaltsansicht nicht angezeigt

Eingetragen von raffi (21)
am 22.10.2012 - 08:39 Uhr in
  • Modul-Entwicklung
  • Drupal 6.x

Hallo,

ich habe ein Modul geschrieben, welches manuell eine (Rück-)Referenz in die Datenbank schreibt. Wobei Typ A mehrere Referenzen auf Typ B besitzen kann. Das ganze wird also intern über eine content_field_B Tabelle gelöst.
Das merkwürdige an der Sache ist, das die backref in der Ansicht eines Datums vom Typ B korrekt angezeigt wird. Ebenso gibt eine manuell erstellte View, welche als Argument den Titel eines Typs A erhält, die korrekte Liste aller verknüpften Typen B zurück.
Nur die Standardansicht eines Typs A zeigt nicht die mit dem Modul erstellten B's an. Ich hatte es allerdings bis jetzt 2 mal geschafft, dass auch dort alle vorhandenen Daten angezeigt werden. Ich kann das ganze aber nicht reproduzieren....

Ich hoffe das Problem wird aus der Beschreibung verständlich. Ich weis nicht wirklich, an welcher Stelle das ganze scheitert.

Danke und viele Grüße

‹ Formular Externe Datenbank Feeds Import Users - Zusätzliche Profilfelder als Target ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

hallo raffi Zitat: Ich hoffe

Eingetragen von 1kubik (903)
am 22.10.2012 - 13:14 Uhr

hallo raffi

Zitat:

Ich hoffe das Problem wird aus der Beschreibung verständlich

also für mich nicht .. :)
ohne code bespiel eh nicht wirklich ...

Zitat:

Ich hatte es allerdings bis jetzt 2 mal geschafft, dass auch dort alle vorhandenen Daten angezeigt werden

klingt nach cache?!

und warum benutzt du eigendlich nicht das node reference modul um das umzusetzen?

grüße
stef

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo,ich habe mal zwei

Eingetragen von raffi (21)
am 23.10.2012 - 08:48 Uhr

Hallo,

ich habe mal zwei Bilder angehängt, um das ganze zu visualisieren. Die Struktur dahinter sieht folgendermaßen aus.
Es existieren 2 Inhaltstypen, Auftrag und Server. Auftrag besitzt eine Beitragsreferenz auf einen oder mehrere Server, umgesetzt mit dem node reference Modul (Text mit Autovervollständigung und unbegrenzter Anzahl von Werten). Im Falle des Anlegens oder Ändern eines Auftrags werden die Standardmittel genutzt. Nun soll aber die Möglichkeit bestehen beim Anlegen eines Servers optional die Rückreferenz anlegen zu können. Umgesetzt wird dies äquivalent mit einem autocomplete Feld:

<?php

   
### Autovervollstaendigen-Feld fuer Kundenprojekt ###
   
$form['project'] = array(
       
'#title'                => 'Kundenprojekt',
       
'#type'                    => 'textfield',
       
'#description'            => 'zugeh&ouml;riges Kundenprojekt',
       
'#autocomplete_path'     => 'autocomplete',
    );

?>

Nachdem also das selbst entwickelte Formular mit der Angabe des zugehörigen Auftrags abgeschickt wurde, soll diese Verbindung natürlich auch vorhanden sein. Im Falle einer view und der backref Anzeige im Server ist sie das auch (siehe Bild). Nur auf der Ansicht des Auftrags fehlt sie unter RDE Instanz(en): gänzlich (siehe Bild). Im konkreten Falle der Bilder müsste also unter RDE Instanz(en): der Eintrag reid_15 auftauchen.

Wegen der Cache Sache habe ich gerade mal nachgeschaut. Den habe ich komplett deaktiviert, daran sollte es also nicht liegen.

Viele Grüße

EDIT: Es scheint doch am cache zu liegen. Nachdem ich den cache manuell leere wird der Eintrag in der Auftragsansicht sofort angezeigt. Mir drängt sich trotzdem die Frage auf, warum dies trotz Deaktivierung relevant ist? Ich muss nach jedem ergänzten Eintrag über mein Formular (Server anlegen mit optionaler Angabe des Auftrags) den cache manuell leeren um die korrekte Anzeige zu erhalten.

AnhangGröße
project.jpg 43.81 KB
server_backref.jpg 35.06 KB
  • Anmelden oder Registrieren um Kommentare zu schreiben

Zitat: EDIT: Es scheint doch

Eingetragen von 1kubik (903)
am 23.10.2012 - 09:33 Uhr
Zitat:

EDIT: Es scheint doch am cache zu liegen. Nachdem ich den cache manuell leere wird der Eintrag in der Auftragsansicht sofort angezeigt. Mir drängt sich trotzdem die Frage auf, warum dies trotz Deaktivierung relevant ist? Ich muss nach jedem ergänzten Eintrag über mein Formular (Server anlegen mit optionaler Angabe des Auftrags) den cache manuell leeren um die korrekte Anzeige zu erhalten.

oder in deinem modul an der stelle
ein
cache_clear_all();

Zitat:

Nun soll aber die Möglichkeit bestehen beim Anlegen eines Servers optional die Rückreferenz anlegen zu können

verstehe ich immer noch nicht :)
ein auftrag ist ein kundenprojekt?
oder ist das eine 3. entität in deinem model?

vg
stf

  • Anmelden oder Registrieren um Kommentare zu schreiben

Der Befehl cache_clear_all()

Eingetragen von raffi (21)
am 23.10.2012 - 10:37 Uhr

Der Befehl cache_clear_all() ist mir auch aufgefallen, da es ein ähnlich gelagertes Problem bereits im Thread [gelöst ]Cache Problem nach db_insert() gibt. Werde das mal so testen...

Der Codeschnipsel verwirrt mehr, als das er hilft. ;D
OK, dann will ich mal genauer werden. Der von mir genannte Server ist im System der Inhaltstyp RDE-Instanz. Ich hatte dies der Einfachheit halber verschwiegen. Ein Teil des Modells ist im angehängten Bild, relationships.jpg, zu sehen.
Meine Aufgabe ist es ein Formular zur Eingabe aller technischen Daten zu einem Auftrag, welche in 3 Inhaltstypen (u. a. RDE-Instanz) festgehalten werden, auf einer Seite zu ermöglichen. Ich erfasse also in einem selbstgeschriebenen Formular alle relevanten Daten zu 3 Inhaltstypen und speichere diese inklusive deren Refrenzen zueinander nach Absenden des Formulars in der DB ab. Ich nutze dafür die node_save Funktion.

Nun soll in diesem Formular ganz zu Anfang die Möglichkeit bestehen, den Auftrag anzugeben, welchem diese Werte zugeordnet werden sollen (siehe Bild form.jpg). Da ich aber eine Referenz auf die RDE-Instanz von Auftrag aus konfiguriert habe ist dies ja eine Rückreferenz (backref), nämlich von RDE-Instanz zu Auftrag. Und eben diese wird aus den nun bekannten Problemen erst nach dem Leeren des cache auch im angegebenen Auftrag angezeigt.

Ich hoffe jetzt wirds etwas klarer... ;D

Viele Grüße

AnhangGröße
relationships.jpg 61.04 KB
form.jpg 52.8 KB
  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • 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
  • Composer nach Umzug
  • [gelöst] Taxonomie Begriffe zeigt nicht alle Nodes an
  • Drupal 11 + Experience Builder (Canvas) + Layout Builder
  • Welche KI verwendet ihr?
  • Update Manger läst sich nicht Installieren
Weiter

Neue Kommentare

  • melde mich mal wieder, da ich
    vor 2 Tagen 20 Stunden
  • Hey danke
    vor 3 Tagen 15 Stunden
  • Update: jetzt gibt's ein
    vor 4 Tagen 9 Stunden
  • Hallo, im Prinzip habe ich
    vor 1 Woche 1 Tag
  • Da scheint die Terminologie
    vor 1 Woche 1 Tag
  • Kannst doch auch alles direkt
    vor 1 Woche 6 Tagen
  • In der entsprechenden View
    vor 1 Woche 6 Tagen
  • Dazu müsstest Du vermutlich
    vor 1 Woche 6 Tagen
  • gelöst
    vor 4 Wochen 2 Tagen
  • Ja natürlich. Dass ist etwas,
    vor 4 Wochen 3 Tagen

Statistik

Beiträge im Forum: 250233
Registrierte User: 20449

Neue User:

  • Mroppoofpaync
  • 4aficiona2
  • AppBuilder

» Alle User anzeigen

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