DB request mit extbase

  • einpraegsam.net einpraegs...
    MacGyver
    0 x
    9340 Beiträge
    80 Hilfreiche Beiträge
    16. 01. 2010, 16:01

    Einfaches Beispiel für eine Datenbankabfrage: Werte aus einer vorhandenen Extension holen:

    1. $res = $GLOBALS['TYPO3_DB']->exec_SELECTquery (
    2. 'tt_news.*',
    3. 'tt_news',
    4. $where = 'title LIKE ' . $GLOBALS['TYPO3_DB']->fullQuoteStr($title, 'tt_news'),
    5. $groupby = '',
    6. $orderby = 'crdate DESC',
    7. $limit = 1
    8. );
    9. if ($res) $row = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($res);

    Wie verhält es sich mit jetzt mit extbase? Genauso weil es sich um eine andere Tabelle verhält? Oder doch eleganter?

    Cheers, Alex

    in2code.de - Wir leben TYPO3
    - Möchtest du TYPO3 komplett verstehen? Eigene Erweiterungen erstellen? Bei uns gibt es auch Schulungen https://www.in2code.de/produkte/typo3-schulungen/
    - Die Arbeit mit TYPO3 macht dir Spaß? Du stehst auf Berge? Komm zu uns! https://www.in2code.de/agentur/karriere/


  • 1
  • froemken froemken
    Jedi-Ratsmitglied
    0 x
    811 Beiträge
    1 Hilfreiche Beiträge
    10. 02. 2010, 15:50

    Hi Einpraegsam,

    ist das Thema noch aktuell?
    Ich frage deshalb, weil ich vor 1-2 Tagen einen Beitrag von Dir bei twicker.de gefunden habe, der auf meine Fluid-Beispiele verweist.

    Stefan

  • fragile74 fragile74
    Jedi-Ritter
    0 x
    125 Beiträge
    0 Hilfreiche Beiträge
    15. 02. 2010, 11:00

    Um DB-Abfragen und SQL-Statements musst du dich in Extbase-Extensions nicht mehr kümmern, dafür gibts die Model-Klasse und die Repositories... sämtliche Tabellen, die du brauchst, werden als Objekte in deinem MVC-Framework behandelt - ist ein ziemliches Umdenken, ich schwitze hier auch ab und an ;)

  • einpraegsam.net einpraegs...
    MacGyver
    0 x
    9340 Beiträge
    80 Hilfreiche Beiträge
    15. 02. 2010, 11:06

    @froemken: Ich habe es auf die klassische Art gelöst, das ist aber natürlich nicht der richtige Weg (Thema Frustfaktor)

    @fragile74: Die Theorie war mir schon klar. Dennoch war ich auf der Suche nach einem konkreten Beispiel (z.B Werte aus tt_content oder tt_news abrufen)

    in2code.de - Wir leben TYPO3
    - Möchtest du TYPO3 komplett verstehen? Eigene Erweiterungen erstellen? Bei uns gibt es auch Schulungen https://www.in2code.de/produkte/typo3-schulungen/
    - Die Arbeit mit TYPO3 macht dir Spaß? Du stehst auf Berge? Komm zu uns! https://www.in2code.de/agentur/karriere/

  • fragile74 fragile74
    Jedi-Ritter
    0 x
    125 Beiträge
    0 Hilfreiche Beiträge
    15. 02. 2010, 16:16

    Hi,
    ab März gibt es glaub' ich das erste Buch zur Extbase/Fluid - Programmierung. Außerdem gibt es ja das Blog-Beispiel... Herr Froemken zeigt anhand von fe_user, wie es konkret geht... Du müsstest meiner Meinung nach ein Repository Objekt vom Typ Tx_Extbase_Persistence_Repository für die tt_news Tabelle anlegen (im entsprechenden Ordner). Darauf kannst du dann aus dem Controller mit den Methoden der Tx_Extbase_Persistence_Repository-Klasse zugreifen.

    Ich hab' mir die aktuelle API- und Manual-Dokumentation von extbase aus dem SVN unter https://svn.typo3.org/TYPO3v4/CoreProjects/MVC/doc_extbase/Documentation/API/ ausgecheckt und arbeite damit, klappt soweit gut ;)...

  • einpraegsam.net einpraegs...
    MacGyver
    0 x
    9340 Beiträge
    80 Hilfreiche Beiträge
    15. 02. 2010, 16:24

    Mist - mir fehlt einfach die Gelduld...

    Die Veröffentlichung des Buchs haben Sie auf Mai verschoben leider :(

    in2code.de - Wir leben TYPO3
    - Möchtest du TYPO3 komplett verstehen? Eigene Erweiterungen erstellen? Bei uns gibt es auch Schulungen https://www.in2code.de/produkte/typo3-schulungen/
    - Die Arbeit mit TYPO3 macht dir Spaß? Du stehst auf Berge? Komm zu uns! https://www.in2code.de/agentur/karriere/

  • fragile74 fragile74
    Jedi-Ritter
    0 x
    125 Beiträge
    0 Hilfreiche Beiträge
    15. 02. 2010, 18:19

    Hmm... bad news - wahrscheinlich kommen sie mit der Aufbereitung des Themas auch ned so richtig hin ;) ... ich hoffe jedenfalls, dass bald eine gute Doku zu dem Thema erscheint, das Blog-Beispiel ist schon sehr umfassend, mir fehlt nur die Anbindung an bestehende TYPO3-API-Strukturen und eben der Umgang mit bestehenden Extensions ... trotzdem lohnen sich die Mühen spätestens dann, wenn TYPO3 5.x erscheint und sich alle durch dieses "Tal" kämpfen müssen :)

  • super-mario super-mar...
    Padawan
    0 x
    46 Beiträge
    0 Hilfreiche Beiträge
    12. 04. 2010, 14:26

    he Alex,

    vielleicht findest du hier in der Link Sammlung was passendes !
    http://www.mario-naether.de/blog/post/extension-entwicklung-mit-extbase-dokus.html

    stehe vor dem gleichen Problem, wie ich mein Konzept weiter baue!

  • froemken froemken
    Jedi-Ratsmitglied
    0 x
    811 Beiträge
    1 Hilfreiche Beiträge
    12. 04. 2010, 14:31

    Ha! Den Link kenn ich...den hab ich grad gestern noch in meiner AwStats-Auflistung gesehen :-) Gute Sammlung!
    Ich kümmere mich jetzt erstmal um andere Dinge, da in nem knappen Monat eh das neue Buch über extbase rauskommt. Warum mir jetzt das Hirn zermatern, wenn erstens eh alles noch in der Entwicklung ist und die Lösung in einem Monat in dem bereits seit 3 Monaten bestellten Buch steht :-)

    Stefan

  • einpraegsam.net einpraegs...
    MacGyver
    0 x
    9340 Beiträge
    80 Hilfreiche Beiträge
    19. 09. 2010, 20:09

    Das geht übrigens ganz einfach - für die immer noch Suchenden - Beispiel mit tt_address:

    1. plugin.tx_ext {
    2. persistence {
    3. classes {
    4. Tx_ext_Domain_Model_Address {
    5. mapping {
    6. tableName = tt_address
    7. recordType = Tx_ext_Domain_Model_Address
    8. columns {
    9. birthday.mapOnProperty = birthday
    10. }
    11. }
    12. }
    13. }
    14. }
    15. }

    in2code.de - Wir leben TYPO3
    - Möchtest du TYPO3 komplett verstehen? Eigene Erweiterungen erstellen? Bei uns gibt es auch Schulungen https://www.in2code.de/produkte/typo3-schulungen/
    - Die Arbeit mit TYPO3 macht dir Spaß? Du stehst auf Berge? Komm zu uns! https://www.in2code.de/agentur/karriere/

  • 1