Кто-нибудь знает, есть ли один доступный сейчас или будет в ближайшем будущем?Существуют ли какие-либо рамки ORM для веб-SQL (javascript)?
ответ
Я ищу то же самое. Кажется, это тонкие подборки. Тот, который выглядел наиболее перспективным для меня, - persistence.js. Impel также выглядит хорошо, но, к сожалению, похоже, что он не обновлялся через полтора года. ActiveRecord.js может закончиться разработкой, но похоже, что они еще не поддерживают веб-SQL. Надеюсь, кто-то опубликует еще несколько вариантов.
Я также ищу то же самое. JazzRecord выглядит как вероятный кандидат.
Реализация на основе JazzRecord представляет собой реализацию joli.js, предназначенную для Appcelerator Titanium framework.
Существует новый объект, называемый JayData library, это как EntityFramework (или NHibernate) для платформы JavaScript: предоставляет JavaScript Language Query (JSLQ) и JavaScript CRUD. Также поддерживает определения моделей, navigationProperties и отношения 1..1.0, 1..m, m..n.
скопировать короткий codesnippet о том, как использовать его:
//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 }
});
Вы можете закодировать против OrdContext и коллекций в нем. Следующая строка создает экземпляр контекста, который при поддержке местного WebSQL (у вас есть другие варианты, как IndexedDB или OData)
var context = new $org.types.OrgContext({ name: "webSql", databaseName: "OrgDB" });
Добавить некоторые данные
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();
Теперь, когда у вас есть данные в магазине вы может запросить его. Запросы JSLQ поддерживаются в полях сущности, а также в полях навигации, указывающих направление m..1. (В версии 1.0 вы не можете непосредственно против 1..m navProperties. Вы можете обойти это с выражением 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. Существуют ли рамки хранилища данных?
- 2. Существуют ли библиотеки/рамки для SCons?
- 3. Какие рамки JavaScript существуют для создания сайтов смартфонов?
- 4. Какие рамки MVP существуют для ASP.net?
- 5. Какие существуют альтернативные рамки для ASP.Net?
- 6. Какие существуют рамки для тестирования мутаций?
- 7. Существуют ли рамки для координат геолокационных полигонов до уровня города?
- 8. Существуют ли рамки для реактивного программирования на бэкэнд?
- 9. Существуют ли библиотеки JavaScript исключительно для WebKit?
- 10. Существуют ли библиотеки JavaScript для определения сочетаний клавиш?
- 11. Существуют ли рамки Javascript, предназначенные для работы с устройствами Windows CE?
- 12. Какие существуют рамки для тестирования мутаций для C/C++?
- 13. Существуют ли общие рамки C# tdd, работающие над Mono?
- 14. Существуют ли шаблоны для данных?
- 15. Тестирование рамки для Javascript (нет сети)
- 16. Javascript рамки для визуализации отношений
- 17. Рамки для JavaScript UI Widgets?
- 18. Какие не веб-ориентированные рамки Python существуют?
- 19. Рамки для оптимизации производительности с помощью Javascript
- 20. Есть ли рамки для электронной коммерции для javascript
- 21. Какие рамки/решения существуют для планирования и выполнения пользовательских заданий
- 22. Существуют ли альтернативы библиотеке GUI JavaScript Ext.js?
- 23. Существуют ли идеальные размеры массива в JavaScript?
- 24. рамки JavaScript для рисования диаграммы
- 25. Существуют ли какие-либо рамки для синхронизации данных между java-сервером и несколькими веб-браузерами?
- 26. Существуют ли какие-либо javascript-схемы AMD, которые используют отложенные?
- 27. Какие существуют рамки для подписки и обновления данных?
- 28. Будут ли существующие рамки JavaScript включать CommonJS?
- 29. Существуют ли какие-либо альтернативы Javascript
- 30. Разработка приложения для торговли на Java: существуют ли шаблоны/рамки для определения правил торговли?
persistence.js это. – bennedich