Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Datenbank/Yform: Datentypen vs. Feldverwendung #114

Closed
christophboecker opened this issue Sep 10, 2024 · 3 comments
Closed

Datenbank/Yform: Datentypen vs. Feldverwendung #114

christophboecker opened this issue Sep 10, 2024 · 3 comments
Assignees
Labels
bug Something isn't working

Comments

@christophboecker
Copy link
Member

Hier mal einige Punkte, die mir in der Datenbank bzw. den YForm-Tablesets aufgefallen sind:

rex_neues_author

be_user_id

  • db-Feldtyp: mediumtext
  • YForm-Feldtyp: choice=> text
  • Verwendung: Referenz auf einen User in rex_user; (Feld rex_user.id, Typ int unsigned)

Vorschlag: Ein Integer-Feld int unsigned sollte reichen

rex_neues_category

image

  • db-Feldtyp: text
  • YForm-Feldtyp: be_media_preview => text
  • Verwendung: Bildname im Medienpool (Feld rex_media.filename, Typ varchar(255))

YForm-seitig kann das Feld nur textals Datentyp. Muss das in der Datenbank auch so sein?

status

  • db-Feldtyp: text
  • YForm-Feldtyp: choice=> text
  • Verwendung: Integer-Wert gem. Callback Category::statusChoice;

Vorschlag: Umstellen auf int

rex_neues_entry

domain_ids

  • db-Feldtyp: text
  • YForm-Feldtyp: text
  • Verwendung: Liste mit Integer-Wert als Referenz auf YRewrite; (Feld rex_yrewrite_domain::id, Typ int unsigned)

Mit wievielen Domain-IDs müsste man realistisch maximal rechnen? Ein Feld von Typ varchar(161) nimmt 38 Ids auf (durchschnittliche Länge 4 Ziffern) oder 47 (3 Ziffern). Oder man nimmt direkt den Datentyp set. Dafür ist er da.

image

  • db-Feldtyp: text
  • YForm-Feldtyp: be_media_preview => text
  • Verwendung: Bildname im Medienpool (Feld rex_media.filename, Typ varchar(255))
  • besser: YForm kann hier nur TEXT

YForm-seitig kann das Feld nur textals Datentyp. Muss das in der Datenbank auch so sein?

Wegen PR #102 müssen eh bei einem neuen Release Änderungen im Tableset vorgenommen werden. Die Gelegenheit ist günstig, gleichzeitig weitere Optimierungen in Tabellen und Tablesets vorzunehmen.

@alxndr-w
Copy link
Member

Alles richtig. Alles Dinge, bei denen ich meinte, dass ich diese schon Mal umgesetzt habe.

Wenn wir das geradeziehen, und das sollten wir unbedingt, können wir das als "Bug" behandeln imho und die Änderungen auch in einer Minor-Version durchführen.

Ich habe bewusst be_media_preview und domain als eigene Felder in yform_field angelegt. Wir können gerne die Möglichkeit für varchar und set dort als db-Feldtyp hinterlegen.

alxndr-w added a commit that referenced this issue Sep 13, 2024
@alxndr-w
Copy link
Member

5a62f3c

Ich konnte alles umsetzen bis auf das set für die domain_ids. Da kommt es zu SQL-Fehlern.

Dafür gerne ein neues Issue.

@alxndr-w
Copy link
Member

Und natürlich auch update_scheme.php aktualisiert: f8ecec9

@alxndr-w alxndr-w self-assigned this Sep 13, 2024
@alxndr-w alxndr-w added the bug Something isn't working label Sep 13, 2024
alxndr-w added a commit to alexplusde/yform_field that referenced this issue Sep 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants