jQuery Database & Multilingualer Inhalt: Gut programmiert?

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • jQuery Database & Multilingualer Inhalt: Gut programmiert?

    Heyho ;D.

    Ich habe ein kleines jQuery-Plugin geschrieben, dass sowohl eine Datenbank als auch multilingualen Inhalt bereitstellt.

    Ich bin neu bei der jQuery-Plugin-Programmierung und hätte daher gerne ein paar Feedbacks :). Die Software ist meiner Meinung nach gut und sehr ausführlich Dokumentiert, sowohl inline als auch online.

    Komplett Bugfrei ist sie zwar noch nicht, aber die Datenbank-Funktionalität und der mehrsprachige Inhalt sollte kein Problem sein :D.

    Es würde mich freuen, wenn ihr mir ein paar Feedbacks geben könntet, auch in der Art und Weise der Dokumentation und jQuery-Implementierung :).

    Projektseite
    Getting started

    Wie gesagt, bin ich absolut offen für und freue mich über konstruktive Kritik ohne Ende^ ^.


    Gruß,
    SargTeX


    /EDIT:
    Hier die Benutzung der Datenbank, damit ihr nicht zwangsweise zu GoogleCode gehen müsst.

    Quellcode

    1. $.jdb().createTable("test", ["spalte1", "spalte2"]); //erstellt eine neue Tabelle namens "test" mit 2 spalten
    2. $.jdb().insert("test", {spalte1: "Hallo Welt", spalte2: "Anderer Wert"}); //fügt eine neue Reihe in der Tabelle ein
    3. $.jdb().remove("test", 0); //entfernt die erste Reihe der Tabelle "test"
    4. $.jdb().update("test", 0, {spalte2: "Doch kein anderer Wert"}); //aktualisiert die Reihe; spalte1 bleibt unverändert
    5. $.jdb().list("test", $('#meinElement')); //listet alle reihen im element auf
    6. $.jdb().adminpanel($('#meinElement')); //erstellt ein administrations-panel zur Verwaltung der Datenbank



    ...und die Benutzung der Sprache:

    Quellcode

    1. $.jlng("de"); //Deutsch ist die Standard-Sprache
    2. $.jlng("en"); //Englisch ist die Standard-Sprache
    3. $.jlng("de").set("cancel", "Abbrechen"); //Übersetze "cancel" in Deutsch
    4. $.jlng().set("cancel", "Abbrechen"); //Übersetze "cancel" in der Standard-Sprache
    5. $.jlng().get("cancel"); //Bekomme Übersetzung für "cancel" in der Standard-Sprache
    Bilder
    • adminpanel-1.png

      24,08 kB, 625×272, 303 mal angesehen
    • adminpanel-2.png

      27,58 kB, 625×278, 347 mal angesehen

    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von SargTeX () aus folgendem Grund: Screenshots hinzugefügt

  • Hi,
    ich finde es eigentlich ganz gelungen. Du hast einen Wrapper für eine relationale Datenbank auf jstorage programmiert.
    Ich fände noch die Einschränkungen interessant. Welche Browser mit welchen Dateigrößen werden unterstützt. Auf jstorage.info findest du Informationen dazu.

    Deinen Beschreibungssatz könnte man auch noch weiter ausformulieren. Es muss rüber kommen, dass die Daten im Browser gespeichert werden. Es ist kein Wrapper für eine echte serverbasierten Datenbank.

    Feature Request:
    Eine Dump Methode, die dir alles in SQL Syntax zurückgibt. Dann kann man die Daten auch via Ajax Request in eine echte Datenbank pumpen.

    Lg
  • Hey
    Danke für das Feedback! :D
    Unter "Compability" befindet sich ein Link zur Website von jStorage, wo steht, wieviel Speicherplatz zur Verfügung steht und welche Browser unterstützt werden ;). Vll. sollte ich die Tabelle von dort abzeichnen.

    Mit dem Beschreibungssatz hast du recht, das änder ich auf jeden Fall noch.

    Zur Dump Methode: Ich überlege auch, eine Server-Funktion hinzuzufügen. Über eine Option kann man auswählen, ob es auf dem Client oder auf dem Server abgespeichert werden soll.
    Das ganze soll dann so aussehen:

    Quellcode

    1. $.jdb({side: 'server', host: 'localhost', databaseName: 'myDB', user: 'root', password: 'myPW'});
    2. $.jdb().createTable("test", ["name", "value"]); //creates the table at the server database

    (Diskussion)

    Gruß,
    Martin
  • Hm, du magst den Verbindungsaufbau ja nicht mit JavaScript machen. Deswegen solltest du die Zugangsdaten in deinem Backend behalten.
    Die JavaScript API bräuchte nur eine Dump Methode um die Daten zu extrahieren.

    Ich weiß auch nicht ob deine Dump Methode lieber ein Array oder ein SQL Dialekt exportieren soll. Am besten du bietest beides an.
    Das schickst du dann via AJAX an dein Backend, wo jeder Nutzer nochmal schauen kann, ob überhaupt die Berechtigungen dafür vorhanden sind.
  • Gute Idee. Kommt aber wohl erst später, da das Tool erstmal zu 100% aus JavaScript bestehen soll.

    Die dump()-Methode habe ich implementiert. Entsprechende Funktion steht auch im adminpanel zur Verfügung. Es können dabei sowohl einzelne Tabellen als auch alle Tabellen gemeinsam umgewandelt werden.
    Die Rückgabe erfolgt als SQL. Die Felder und Reihen erhält man ja bereits als Array über das Tabellen-Objekt bzw. die Funktion getRows().

    Ich bin gerade dabei, ein Komplettpaket zu erstellen (die JDB , Sprachpakete , alle benötigten Plug-Ins, Demos und ein fertiges Adminpanel). Sobald ich das fertig habe, veröffentliche ich die neue Version mit der dump()-Methode :).