Quelqu'un sait s'il y en a un disponible maintenant ou le sera dans un futur proche?Existe-t-il des frameworks ORM pour Web SQL (javascript)?
Répondre
Je cherche la même chose. Cela ressemble à des pickings minces. Celui qui m'a semblé le plus prometteur est persistence.js. Impel semble également bien, mais, malheureusement, il semble qu'il n'a pas été mis à jour dans un an et demi. ActiveRecord.js pourrait finir par fonctionner, mais il ne semble pas encore qu'ils supportent Web SQL. J'espère que quelqu'un postera plus d'options.
Je cherche aussi la même chose. JazzRecord ressemble à un candidat probable.
Une implémentation basée sur JazzRecord est l'implémentation joli.js conçue pour le Appcelerator Titanium framework.
Il y en a un nouveau appelé JayData library, celui-ci est comme EntityFramework (ou NHibernate) pour la plate-forme JavaScript: fournit JavaScript Language Query (JSLQ) et JavaScript CRUD. Prend également en charge les définitions de modèle, les propriétés de navigation et les relations 1..1.0, 1..m, m..n.
copier un court codesnippet sur la façon de l'utiliser:
//define storage model: Department and Employee in a 1..m relation
$data.Entity.extend("$org.types.Department", {
Id: { type: "int", key: true, computed: true },
Name: { type: "string", required: true },
Address: { type: "string" },
Employees: { type: "Array", elementType: "$org.types.Employee", inverseProperty:"Department" }
});
$data.Entity.extend("$org.types.Employee", {
Id: { type: "int", key: true, computed: true },
FirstName: { type: "string", required: true },
LastName: { type: "string", required: true },
Department: { type: "$org.types.Department", inverseProperty:"Employees"}
});
$data.EntityContext.extend("$org.types.OrgContext", {
Department: { type: $data.EntitySet, elementType: $org.types.Department },
Employee: { type: $data.EntitySet, elementType: $org.types.Employee }
});
Vous pouvez coder contre le OrdContext et les collections qu'il contient. La ligne suivante va créer une instance de contexte qui est soutenue par websql locale (vous avez d'autres options comme IndexedDB ou OData)
var context = new $org.types.OrgContext({ name: "webSql", databaseName: "OrgDB" });
Ajouter des données
var department = new $org.types.Department({ Name: 'Finance', Employees: [] });
var emp1 = new $org.types.Employee({ FirstName: 'John', LastName: 'Smith'});
department.Employees.push(emp1);
var emp2 = new $org.types.Employee({ FirstName: 'Jane', LastName: 'Smith'});
emp2.Department = department;
context.add(department);
context.add(emp2);
context.saveChanges();
Maintenant que vous avez données dans le magasin que vous peut l'interroger. Les requêtes JSLQ sont prises en charge sur les champs d'entité, ainsi que les champs de navigation qui pointent dans la direction m..1. (Vous pouvez contourner cela avec l'expression in
//filter
context.Employees
.filter(function(emp) { return emp.LastName == 'Smith' })
.toArray(...);
//filter
context.Employees
.filter(function(emp) { return emp.FirstName.startsWith('J') ||
emp.LastName.toLowerCase.contains('mith') })
.toArray(...);
//filter2
context.Employees
.filter(function(emp) { return emp.Department.Id == 1 })
.toArray(function(emps) { });
//filter2 + eager load
context.Employees
.include("Department")
.filter(function(emp) { return emp.Department.Id == 1 })
.toArray(function(emps) { });
//map/project
context.Employees
.filter(function(emp) { return emp.Department.Id == 1 }).toArray(...)
.map(function(emp) { return { EmployeeName: emp.FirstName + emp.LastName,
DepartmentName: emp.Department.Name }})
.forEach(function(item) { ... })
- 1. Ressource pour comparer les frameworks web javascript
- 2. Des frameworks pour construire des applications web
- 3. Frameworks/templates pour développeur web
- 4. Une taxonomie des frameworks web?
- 5. Journalisation d'événements personnalisée pour les frameworks Javascript
- 6. Web Frame Validation Frameworks
- 7. Plusieurs frameworks javascript dans un conflit de pages Web
- 8. utilisation frameworks web dans NetBeans
- 9. Javascript "classes" (pas de frameworks)
- 10. Les frameworks Web Python basés sur WSGI
- 11. frameworks pour prendre en charge les technologies RIA/Web 2.0
- 12. Gestion de l'autorisation dans les frameworks web
- 13. frameworks MVC pour WPF
- 14. Existe-t-il des frameworks Web Objective-C?
- 15. faire une application web et des frameworks un seul paquet
- 16. Quels sont les grands frameworks web aujourd'hui?
- 17. Quels frameworks MVP existent pour ASP.net?
- 18. frameworks de développement d'applications web en 1995
- 19. Comment les frameworks web fonctionnent-ils?
- 20. M: relation N dans la table sql
- 21. SQL SELECT avec la relation m: n
- 22. Comment comparer un serveur Web Scala avec d'autres frameworks web?
- 23. Quels sont les sémantiques (M | m) des akefiles?
- 24. Cadres JavaScript non Web
- 25. Les frameworks UnitTest pour AS2?
- 26. Articles et catégories, m: m est mappé, où ajouter une méthode pour renvoyer des articles paginés?
- 27. SQL pour le Web
- 28. Est-ce que les frameworks Javascript répandus fournissent un utilitaire pour l'élagage des objets?
- 29. mysql codeigniter enregistrement actif m: m suppression
- 30. 100% Javascript Web Framework
persistence.js il est dans la version 1.0, vous ne pouvez pas directement contre navProperties de 1..m.. – bennedich