Zum Inhalt springen

Bug im Kickstarter oder was mache ich sonst falsch?

Erstellt am 7. Oktober 2005 · 1 Antwort · letzte Antwort am 17. Oktober 2005

Tags: TCA, Frage

BenjaminW ·

Hi!

ich habe mit dem Kickstarter eine Extension erstellt, die auch mehrere Tabellen in der Datenbank anlegt. Eine davon enthält ein Textfeld (input advanced). Bei diesem Textfeld habe ich nun unter "Evaluate Value to:" den Eintrag "Floating point x.xx" ausgewählt. Das heisst für mich, er sollte eine VARCHAR/TINYTEXT Spalte verwenden und dort einen Float Wert reinschreiben. Pustekuchen!
Das Ding generiert eine Tabelle mit einem INTEGER Feld!

Hier der CREATE TABLE, den der Kickstarter generiert:

CREATE TABLE tx_testextension_test_table (
    ...
    test_field_float [b]int(11)[/b] DEFAULT '0' NOT NULL,
    ...
);

In der generierten tca.php steht allerdings folgendes drin:

        // TRUNCATED
        "test_field_float" => Array (        
            "exclude" => 0,        
            "label" => "LLL:EXT:test_extension/locallang_db.php:tx_testextension_test_table.test_field_float",        
            "config" => Array (
                "type" => "input",    
                "size" => "30",    
                "eval" => "double2", // <---------
            )
        ),
    ),
    // TRUNCATED

Wenn ich nun die Extension schreibe und installiere, kann ich keine Float Werte in die Datenbank schreiben. Typo3 quittiert jedes Speichern eines Datensatzes mit einer Fehlermeldung, dass der angegebene Float Wert nicht korrekt gespeichert werden konnte.

Mache ich zufällig etwas falsch?

Gruß,
Benjamin

Frohni ·

Hi,
ja das ist ein Bug. Am besten du editierst nachträglich die exttables.sql und änderst INTEGER in FLOAT bzw. VARCHAR.
Ich habe jedenfalls noch nicht den Part in Kickstarter gefunden, der den Bug erzeugt (Habe auch nicht soo doll gesucht 😉 )

Gruß, Frank