Forms - SQL Auswahl mit Suchfunktion

  • Joomla Version
    5.x
    PHP Version
    PHP 8.3.x
    Hoster
    Hetzner root

    Hey,

    ich bin gerade dabei, im backend die Eingabemaske für eine Tabellen-View zu erstellen.

    Hierfür habe ich einige Felder, manche vom Typ SQL. Nun würde ich gerne, da in manchen Feldern sehr viele Werte enthalten sind, eine Suchfunktion einbauen.

    In einer Vorgängerkomponente habe ich folgendes gefunden: layout="joomla.form.field.list-fancy-select" class="inputbox"

    Code
     <field name="einsatzkategorie_id" type="sql" label="Einsatzkategorie" query="SELECT id, title, ordering FROM #__blaulichtmonitor_einsatzkategorien ORDER BY ordering ASC" key_field="id" value_field="title" required="true" layout="joomla.form.field.list-fancy-select" class="inputbox" />

    Das funktioniert prinzipiell auch schon:

    Nun würde ich aber gerne das X in der Eingabemaske entfernen, da ich nicht möchte, dass man hier nicht Nichts auswählen kann. Ich finde hierzu aber leider nichts wie sich das umsetzen lässt.

    Ich habe auch folgendes gefunden: https://manual.joomla.org/docs/general-c…tandard-fields/ aber unter SQL lässt sich hier leider nichts passendes finden. Tatsächlich hab ich auch in der Doku nichts zu layout="joomla.form.field.list-fancy-select" gefunden.

    BlaulichtMonitor/admin/forms/einsatzbericht.xml at alpha-dev · TheSoulrester/BlaulichtMonitor
    Eine von Grund auf neu entwickelte Joomla 5 Komponente zur Verwaltung von Einsätzen. - TheSoulrester/BlaulichtMonitor
    github.com


    Würde mich über etwaige Hilfe freuen :) - vermutlich werd ich hier auch nochmal bei anderen Feldern um Hilfe fragen müssen...

    Vielen Dank im Voraus und viele Grüße,

    Alex

  • Ich habe auch folgendes gefunden: https://manual.joomla.org/docs/general-c…tandard-fields/ aber unter SQL lässt sich hier leider nichts passendes finden. Tatsächlich hab ich auch in der Doku nichts zu layout="joomla.form.field.list-fancy-select" gefunden.

    https://github.com/TheSoulrester/…zbericht.xml#L6

    Hallo Alex,

    Helfen kann i da überhaupt net - keine Ahnung davon :)

    Hab G befragt, besser gesagt KI meint. Kopiere es hier her:

    Aber Obiges, wirst Du ja eh kennen/wissen.

    Und: https://forum.joomla.org/viewtopic.php?t=1003378
    Liebe Grüße
    Christine

  • Das x kannst du eventuell mit CSS ausblenden: class="choices__button_joomla".

    Bei mir funktioniert ein solches sql field so wie du möchtest. Es braucht required="true" und keinen default wert.

    hmm, required="true und keinen default wert ist ja schon gesetzt:

    Code
    <field name="einsatzkategorie_id" type="sql" label="Einsatzkategorie" query="SELECT id, title, ordering FROM #__blaulichtmonitor_einsatzkategorien ORDER BY ordering ASC" key_field="id" value_field="title" required="true" layout="joomla.form.field.list-fancy-select" class="inputbox" />

    Und ich möchte eigentlich custom-css vermeiden wenn es mit Bordmitteln schon gut aussieht. Aber wenn es hier keine andere Möglichkeit gibt...


    Eine weitere Frage: Kann ich in der Eingabemaske von Einsatzfahrzeuge die zugehörigen "Einheiten" als Header dazuschreiben?

    Das ganze ist auch ein SQL Feld mit fancy-select - mir fällt nur gerade spontan nichts ein, wie ich das integrieren kann. Ich möchte es auch vermeiden, custom-form-fields nutzen zu müssen weil das am Ende auch wieder extra Aufwand bedeuten würde, im Falle von Updates warten zu müssen.


    christine2 danke für deine Antwort, so ganz hat mich das aber nicht weiter gebracht. Ich arbeite nebenbei bisschen mit ChatGPT und GithubGPT. Aber hat bisher hier auch noch nicht weiter geholfen.


    Viele Grüße,
    Alex

  • Ich habe anscheinend das Problem nicht ganz verstanden.

    Du kannst die Einheiten dazu nehmen, mit einem JOIN im deinem SQLl. sowas kann chatGPT sehr gut zeigen.

    Ich würde allerdings für sowas ein eigenes Form Field für deine Komponente schreiben, das finde ich flexibler, es lässt sich auch besser gestalten. Schau mal als Beispiel in administrator\components\com_config\src\Field\ConfigComponentsField.php.

  • ..... ob du bereits mit der Entwicklung der Komponente weitergekommen bist und man sie schon irgendwo betrachten kann? .......

    Konnte dazu nur das finden:

    GitHub - TheSoulrester/BlaulichtMonitor: Eine von Grund auf neu entwickelte Joomla 5 Komponente zur Verwaltung von Einsätzen.
    Eine von Grund auf neu entwickelte Joomla 5 Komponente zur Verwaltung von Einsätzen. - TheSoulrester/BlaulichtMonitor
    github.com

    Gruß Elwood

  • Hallo thesoulrester ,


    ich wollte mich nur mal erkundigen, ob du bereits mit der Entwicklung der Komponente weitergekommen bist und man sie schon irgendwo betrachten kann? Würde mich über eine Rückmeldung freuen.


    Hey serecords


    Ich bin bisschen weiter gekommen, aber leider dann irgendwann etwas ins Stocken gekommen bei der medienmigrierung und so und die recht marginale joomla Doku hat mich da nicht weiter unterstützt…


    Zudem hab ich jetzt die Fachbereichsleitung Öffentlichkeitsarbeit bei uns übernehmen „dürfen“ und deswegen gerade weiter wenig Zeit.


    Tatsächlich hat sich aber noch jemand an einer Komponente gewagt, man mag Böses denken, heißt es fast so wie meine Komponente, hätte ich es gut gefunden wenn er sich damals auf meine Anfrage in der einsatzkomponente gemeldet hätte und man sich hätte gegenseitig unterstützen können…

    Blaulichtkomponente.de - Startseite


    Allerdings fehlen noch viele Features in dieser „neuen“ Komponente und ein GitHub gibt es auch noch nicht davon. Meiner Einschätzung nach geht dieses Projekt auch nur sehr schleppend voran…


    Aber Elwood hat tatsächlich mein Git gefunden :)