snit-ram / gamos

Gamos is an ORM for nodejs
0 stars 0 forks source link

Mapping API #1

Open snit-ram opened 11 years ago

snit-ram commented 11 years ago

Just a draft. Please came up with something better.

var db = ... //connect;

var Project = gamos.Model.define('Project', {
  title: gamos.dataTypes.STRING,
  description: gamos.dataTypes.TEXT
});

var Task = gamos.Models.define('Task', {
  title: gamos.dataType.STRING,
  description: gamos.dataTypes.TEXT,
  deadline: {
    type: gamos.dataTypes.DATE,
    validation: function (value) {
      return isDate(value);
    }
  },
  project: Project
});

Alternatively:

var Project = gamos.Model.define('Project', {
  title: gamos.dataTypes.STRING,
  description: gamos.dataTypes.TEXT
}, {
  hasMany: Task
});