com.coderama.quickmodel

QuickModel is a simple/easy to setup ORM library for Qt/QML

version 0.0.2

To install:

❯ qpm install com.coderama.quickmodel

QuickModel

QuickModel is a simple/easy to setup ORM library for Qt/QML. Tha main goal is to provide a very simple ORM layer on top of the SQLite access.

To achieve those goals we aim the following

  • Single file library/Just need to import a single file into your QML project
  • Consistent interface inspired by Django ORM

Quick Start

Clone the repository and import the library/quickmodel.js file into your project.

Define your database and the models:

    var quickModel = new QuickModel.QMDatabase('testApp', '1.0');
    //Define objects
    var Artist = quickModel.define('Artist', {
        name: quickModel.String('Name', {accept_null:false})
    });
    var Track = quickModel.define('Track', {
        title: quickModel.String('Track Name', {accept_null:false}),
        artist: quickModel.FK('Artist', {'references': 'Artist'})
    })

Run your queries on your new database:

    var artist1 = Artist.create({name: 'Lana del Rey'});
    var artist2 = Artist.create({name: 'Rammstein'});
    var artist3 = Artist.create({name: 'Arctic Monkeys'});
    var artist4 = Artist.create({name: 'Johnny Cash'});
    var artist5 = Artist.create({name: 'Johnny Bravo'});
    var track = Track.create({title: 'Born to die', artist: artist.id});
    
    var artists_johnny = Artist.filter({name__like: 'Johnny'}).all();
    var sorted_artists = Artist.order('name').limit(3).all();
    var lana = Artist.filter({name: 'Lana del Rey'}).get();

Documentation: http://quickmodel.readthedocs.org/en/latest/

TODO

  • More detailed documentation
  • Support to joins
  • Support to async calls
Author

Daniel França

Info
View on Github

License: MIT

Installs
Today 0
This week 0
This month 1
This year 14
Total 14
Dependencies

None.

Versions