Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Anfängerfragen ›

Drupal 8.2.2: Schwierigkeiten mein Datenmodell in Drupal abzubilden

Eingetragen von ZNC (45)
am 12.11.2016 - 07:57 Uhr in
  • Anfängerfragen
  • Drupal 8.x oder neuer

Ich verrenne mich und komme gedanklich mit der Abbildung meines Datenmodels in Drupal nicht weiter. Um es zu veranschaulichen, habe ich ein ER-Modell angehängt.

Voraussetzungen

  • Drupal ist multilingual mit deutsch + türkisch eingerichtet.
  • Zu jeder Pflanze soll jeweils eine Beschreibung in deutsch + türkisch existieren.
  • Jede Pflanze hat beliebig viele, jedoch mindestens einen Namen (Bezeichnung), egal welche Sprache.
  • Jede Pflanze hat immer einen Rufnamen jeweils in deutsch + türkisch - ein gängiger Name, unter dem diese erkannt wird.
  • Zusätzlich zu den vorhandenen Sprachen deutsch + türkisch können die Namen auch in lateinisch oder griechisch erfaßt werden.
  • Die Namen in lateinisch und griechisch werden in allen Sprachen mit dargestellt.
  • Jede Pflanze kann, aber muß nicht, in hierarchischer Beziehung zu einer oder mehreren anderen Pflanzen stehen.
  • Für jede dieser Beziehungen soll die Art der Beziehung nachgehalten werden.

 

Ich habe nun folgendes generiert

Inhaltstyp: "Pflanzen"
Feld: "Beschreibung": Text (formatted, long, with summary)

Inhaltstyp: "Pflanzen-Namen"
Feld: "Name": Klartext
Feld: "Rufname?": Boolean

Taxonomie: "Pflanzen-Beziehungsart"
Begriff: "biologische Taxonomie"
Begriff: "Sorte"

Inhaltstyp: "Pflanzen-Beziehungen"
Feld: "Mutter": Entitäts-Referenzierung (Inhaltstyp: "Pflanzen", Erlaubte Anzahl Werte: 1)
Feld: "Kind": Entitäts-Referenzierung (Inhaltstyp: "Pflanzen", Erlaubte Anzahl Werte: 1)
Feld: "Beziehungsart": Entitäts-Referenzierung (Taxonomie: "Pflanzen-Beziehungsart", Erlaubte Anzahl Werte: 1)

 

 

Beispiele:

1. Pflanze: "Solanum"
Namen:
lateinisch: Solanum
deutsch: Nachtschatten
türkisch: Patlıcangiller
Beziehungen:
zum Kind "Tomate" als "biologische Taxonomie"
zum Kind "Kartoffel" als "biologische Taxonomie"

2. Pflanze: "Tomate"
Namen:
lateinisch: Solanum lycopersicum (Rufname)
deutsch: Tomate (Rufname)
deutsch: Paradiesapfel
türkisch: Domates (Rufname)
Beziehungen:
zur Mutter "Nachschatten" als "biologische Taxonomie"

3. Pflanze "Kartoffel"
Namen:
lateinisch: Solanum tuberosum (Rufname)
deutsch: Kartoffel (Rufname)
deutsch: Erdapfel
türkisch: Patates (Rufname)
Beziehungen:
zur Mutter "Nachschatten" als "biologische Taxonomie"
zum Kind "Annabelle" als "Sorte"

4. Pflanze "Annabelle"
Namen:
lateinisch: Solanum tuberosum var. Nicola x Monalisa" (ist in dieser Sprache der Rufname)
deutsch: Annabelle (Rufname)
türkisch: Anabel (Rufname)
Beziehungen:
zur Mutter "Kartoffel" als "Sorte"

 

 

Wo hakts bei mir?

  • Ich könnte den Rufnamen als Inhaltstyp-Feld "Titel" erfassen, so das der Inhaltstyp "Pflanzen-Namen" komplett entfallen könnte, indem ich bei "Pflanzen" ein Feld "Namen" mit Mehrfacheintragungen generiere. Ich könnte zwar keine Rufnamen für die lateinischen Namen definieren, aber damit kann ich leben.
  • Wie kann ich jedoch griechische + lateinische Namen einbinden?
  • Wie bekomme ich es hin, daß jemand anstelle mit "Kartoffel" die Pflanze mit dem Namen "Erdapfel" oder "Solanum tuberosum" bei der Zuordnung finden kann? Also in den Auswahllisten alle verfügbaren Namen gelistet sind (Rufnamen in englisch + türkisch sowie die anderen Namen in englisch + türkisch + lateinisch + griechisch)?
  • Wie kriege ich während der Eingabe die Verbindung von "Pflanzen" auf "Pflanzen-Beziehungen"?
AnhangGröße
Unbenannt1.png41.27 KB
‹ nach Upgrade auf D7 wird Dateipfad zu den Medien doppelt angezeigt Drupal 8.2.2: Schwierigkeiten mein Datenmodell in Drupal abzubilden ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Du hast ein falsches

Eingetragen von wla (9461)
am 12.11.2016 - 13:36 Uhr

Du hast ein falsches Verständnis von der Multilingualität. Die Sprache ist gedacht für den Benutzer der Seite. Es sollte die Sprache sein, die er spricht.
Du definierst, ob ein Entity Mehrsprachigkeit unterstützt und dann noch welche Felder übersetzbar sein sollen. In Deiner Anwendung ist der biologische Name in Latein nicht übersetzbar. Daneben hast du die Namen in der jeweiligen Benutzersprache. Das wäre bei Dir ein wiederholbares Feld, denn Du möchtest ja mehrere Namen in einer Sprache darstellen. Schon das hat seine Tücken. Du kannst eigentlich nur den Rufnahmen übersetzen. Die Entsprechung eines Zweitnamens ist nämlich in einer anderen Sprache vermutlich nicht gegeben (etwa bei Tomate und Paradiesapfel, wobei mir dieser Begriff im Deutschen für Tomate auch neu ist). In diesem Sinne solltest Du Deine Datenstruktur noch einmal überdenken.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Drupal 8.2.2: Schwierigkeiten mein Datenmodell in Drupal ...

Eingetragen von ZNC (45)
am 13.11.2016 - 08:54 Uhr

Ich habe kein falsches Verständnis von Multilingualität - ich lebe Multilingualität! Aber wenn Du es sagst, dann habe ich wohl ein falsches Verständnis der Multilingualität von Drupal und das weiß ich als Newbie.

Die Entität soll in deutsch + türkisch erfaßt werden, ja. Ich habe aber nirgends erwähnt, daß die Namen in der Übersetzung sich entsprechen sollen. Dies ginge, wenn überhaupt, nur mit dem Rufnamen - ich dachte das wäre klar. Aber zu jeder Sprache bzw. Übersetzung soll eine x-beliebige Anzahl Namen erfaßt werden.

Da es scheinbar keine Alternativen gibt (oder?), bleibe ich bei dem was ich bisher in Drupal habe kennenlernen können und das wären 3 Felder: Rufname, Name, wissenschaftlicher Name:

  • Rufname soll "übersetzt" werden. Lösbar, indem man das Titel-Feld des Inhaltstyps verwendet.
  • Viele Namen sollen pro Sprache eingebbar sein, die aber keine Entsprechung der anderen Sprache sein müssen. Auch lösbar, indem man ein übersetzbares Klartext-Mehrfachfeld mit einer unbegrenzt erlaubten Werteanzahl deklariert.
  • In der einfachen Version könnte ich für den wissenschaftlichen Namen, ohne ein Sprachkennzeichen für "latein" oder "griechisch" nachzuhalten, genauso verfahren, wobei dieses Feld keiner Übersetzung bedarf- auch möglich.
  • Ich könnte aber auch eine Entität über einen Inhaltstyp deklarieren, der die Felder "Sprachkennzeichen" + "wissenschaftlicher Name" hat, und über den Inhaltstyp "Pflanzen" referenziert - auch möglich. Der einzige Nachteil wäre, dass die Relation anstelle 1:1,m eine m:n wäre, aber auch kein Problem.

Auch stört es mich derzeit nicht, wenn ich einen Inhalt übersetze, mein komplettes Drupal auf die jeweilige Sprache umgestellt wird. Ich vermute, dass das Einstellungssache ist. Ich finde es nur schade, dass ich für diese Namen, die alle die gleiche Struktur haben, gezwungen werde, drei Felder zu deklarieren und somit 3 Tabellen im Hintergrund generiert werden, aber - wie gesagt - das Leben besteht aus Kompromissen. Die eierlegende Wollmichsau gibt es nicht und bisher finde ich Drupal hochinteressant.

Das einzige, wo ich mir Gedanken mache, ist, wie ich eine Pflanze zu einer anderen in Beziehung setze! Wenn ich eine Zuordnung treffe, so erfolgt die Auswahl über das Titel-Feld des Inhaltstyps. Bleibe ich bei der o. g. Lösung, so wäre dies der Rufname. Würde ich z.B. einen wissenschaftlichen Namen, der meistens ein eindeutiger Name ist, eingeben, so könnte ich keine Zuordnung treffen, da dieser zwar vorhanden, aber in einem anderen Feld lokalisiert ist. Oder, wenn man z.B. "Cranberry" (englischer Name) anstelle "Großfrüchtige Moosbeere" (deutscher Name) eingibt, wäre die Zuordnung adhoc nicht möglich und erst über den Umweg der Übersetzung usw.

Bleibt man bei der o. g. Lösung, so könnte ich in MySQL ohne weiteres einen View über diese 3 Tabellen generieren und hätte somit einen Zugriff auf alle Namen und alle Sprachen. Die Frage wäre, wie kriege ich diese nun bei der Referenzierung angezeigt? Könnte man in dieser Liste der verfügbaren Pflanzen alle Namen als auch die Sprache anzeigen? Gibt es irgendeine Lösung, vielleicht sogar einen anderen Weg?

Eine andere Fragestellung die sich noch ergibt ist, wie kann ich z.B. in der deutschen Darstellung, trotzdem alle Namen - also Rufnamen + Namen in deutsch + türkisch sowie die wissenschaftlichen Namen bei der jeweiligen Pflanze anzeigen? Eigentlich wäre es ein Ausschalten der Multilingualität von Drupal für diese Felder.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Das Du Multilingualität

Eingetragen von wla (9461)
am 13.11.2016 - 13:23 Uhr

Das Du Multilingualität lebst, weiß ich. Hier reden wir aber über die Umsetzung mit Drupal 8.
Entity-Referenzen werden bei Drupal immer über die Entity-ID des referenzierten Entities abgebildet. In einer "normalen" Auswahl wird Dir eine Liste angeboten, bei der Du lediglich die Titel der Entities siehst, um Deine Auswahl zu treffen. Darüber hinaus besteht die Möglichkeit, Views zu benutzen, um die Auswahl zu tätigen. Leider sind die schönen Hilfsmodule [do:reference_dialog] und [do:entityreference_view_widget] für D8 noch nicht verfügbar. Also mußt Du Dich im Moment mit einfachen Views begnügen.

  • 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 1 Tag 13 Stunden
  • Hey danke
    vor 2 Tagen 7 Stunden
  • Update: jetzt gibt's ein
    vor 3 Tagen 1 Stunde
  • Hallo, im Prinzip habe ich
    vor 1 Woche 11 Stunden
  • Da scheint die Terminologie
    vor 1 Woche 14 Stunden
  • Kannst doch auch alles direkt
    vor 1 Woche 4 Tagen
  • In der entsprechenden View
    vor 1 Woche 4 Tagen
  • Dazu müsstest Du vermutlich
    vor 1 Woche 4 Tagen
  • gelöst
    vor 4 Wochen 1 Tag
  • Ja natürlich. Dass ist etwas,
    vor 4 Wochen 2 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