Bất cứ ai cũng biết nếu có sẵn ngay bây giờ hoặc sẽ có trong tương lai gần?Có bất kỳ khung công tác ORM nào cho Web SQL (javascript) không?
Trả lời
Tôi đang tìm kiếm điều tương tự. Nó có vẻ giống như những chiếc nhẫn mỏng. Người trông có vẻ hứa hẹn nhất với tôi là persistence.js. Impel cũng có vẻ tốt nhưng, thật không may, có vẻ như nó chưa được cập nhật trong một năm rưỡi. ActiveRecord.js có thể kết thúc hoạt động, nhưng có vẻ như chúng chưa hỗ trợ Web SQL. Hy vọng rằng ai đó sẽ đăng một số tùy chọn khác.
Tôi cũng đang tìm kiếm điều tương tự. JazzRecord trông giống như một ứng cử viên có khả năng.
Triển khai dựa trên JazzRecord là triển khai joli.js được thiết kế cho Appcelerator Titanium framework.
Có một cái mới gọi là JayData library, cái này giống như EntityFramework (hoặc NHibernate) cho nền tảng JavaScript: cung cấp JavaScript Language Query (JSLQ) và JavaScript CRUD. Cũng hỗ trợ các định nghĩa mô hình, navigationProperties và 1..1.0, 1..m, m..n quan hệ.
tôi sao chép một codesnippet ngắn về cách sử dụng nó:
//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 }
});
Bạn có thể mã hóa chống lại OrdContext và các bộ sưu tập trong đó. Dòng sau sẽ tạo ra một trường hợp ngữ cảnh được hỗ trợ bởi WebSQL địa phương (bạn có các tùy chọn khác như IndexedDB hoặc OData)
var context = new $org.types.OrgContext({ name: "webSql", databaseName: "OrgDB" });
Thêm một số dữ liệu
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();
Bây giờ bạn có dữ liệu trong cửa hàng bạn có thể truy vấn nó. Các truy vấn JSLQ được hỗ trợ trên các trường thực thể, cộng với các trường điều hướng trỏ theo hướng m..1. (Trong phiên bản 1.0 bạn không thể trực tiếp chống lại 1..m navProperties. Bạn có thể phá vỡ điều này với biểu thức 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. Có bất kỳ khung công tác web MVC nào cho Haskell không?
- 2. Bất kỳ khung công tác NIO nào cho .NET?
- 3. Có bất kỳ khung công tác web hiện đại nào (Moose/PSGI) ngoài Catalyst không?
- 4. Có bất kỳ khung công tác web MVC nào hỗ trợ nhiều loại yêu cầu không?
- 5. Có bất kỳ khung công tác web mục tiêu-C nào không?
- 6. Có bất kỳ khung công tác web Haskell gốc, chức năng hơn nào không?
- 7. Tìm kiếm khung công tác Flipbook. Bất kỳ lựa chọn thay thế nào cho Turn.js?
- 8. Xoắn (máy chủ asynch) vs Django (hoặc bất kỳ khung công tác nào khác)
- 9. Có thư viện/khung công tác nào cho SCON không?
- 10. Các khung công tác web Java
- 11. Có bất kỳ khung công tác duy nhất nào để viết iOS, Android (và thậm chí cả Windows Phone) không?
- 12. Giới thiệu khung công tác web cho Clojure
- 13. Phát triển khung công tác cho máy chủ web
- 14. Có bất kỳ khung Silverlight hữu ích nào không?
- 15. Có bất kỳ chuẩn mã hóa nào cho JavaScript không?
- 16. Bất kỳ bộ công cụ web C/C++ nào tốt?
- 17. Có bất kỳ khung công tác tự động nào tốt để áp dụng các chuẩn mã hóa trong Perl không?
- 18. Bất kỳ hướng dẫn nào về khung công tác GWT MVP chính thức?
- 19. Có bất kỳ trình chỉnh sửa thay thế nào cho tệp .m không?
- 20. Có bất kỳ khung công tác Java nào để phân tích cú pháp tệp nhị phân không?
- 21. Có bất kỳ tập lệnh/công cụ JAVADOCS tương tự nào cho các tệp Javascript không?
- 22. Bất kỳ khung công tác nào về xác thực và ủy quyền cho ứng dụng biểu mẫu Windows?
- 23. Có bất kỳ khung công tác nào để thực hiện các mô hình thời gian thực trong node.js không?
- 24. Có bất kỳ nhược điểm tiềm ẩn nào trong việc sử dụng khung công tác Ruby ngoài Rails không?
- 25. Có bất kỳ ứng dụng JavaScript không phải là web nào không?
- 26. Có bất kỳ bất lợi nào đối với SEAM không?
- 27. Không cho phép bất kỳ thao tác nào
- 28. Có bất kỳ khung kiểm tra Đơn vị tốt nào cho Ada không?
- 29. Có bất kỳ tác dụng phụ nào khi sử dụng cho nhiều chức năng tĩnh không?
- 30. Bất kỳ khung JavaScript nào của phía máy khách có tích hợp tốt với Node.js + Express.js + socket.io.js không?
persistence.js. – bennedich