2011-07-23 34 views
6

Tôi đã tạo một bộ Mô hình cho cơ sở dữ liệu của mình bằng Python. Bây giờ tôi muốn tải chúng nhanh chóng với một số dữ liệu - theo cách thủ công. Nếu đây là một ứng dụng .NET, tôi sẽ sử dụng một trong các điều khiển tiện lợi đi kèm với Visual Studio để nhanh chóng kết nối với cơ sở dữ liệu và liên kết một lưới với nó. Sau đó đi đến thị trấn thêm dữ liệu.Cách nhanh nhất để tạo trang web CRUD cho Google App Engine bằng cách sử dụng Python là gì?

Cách phù hợp để thực hiện điều này bằng Python bằng cách sử dụng Google App Engine là gì?

Trong ASP.NET MVC, họ có công cụ "giàn giáo" mới này (một phần của Khuôn khổ thực thể) sẽ tạo các trang CRUD cho bạn. Có bất cứ điều gì như thế được đưa ra một loạt các đối tượng Model trong GAE?

P.S. bằng cách sử dụng các tùy chọn dòng lệnh dandy tiện dụng --use_sqlite và --datastore_path, tôi có thể nhanh chóng sao lưu cơ sở dữ liệu của mình trong môi trường dev của mình một khi tôi làm điều này.

Trả lời

3

Nếu bạn đang sử dụng Django trên game thì bạn có thể sử dụng Django Administration site:

Vậy cách tiếp cận của Django đối với những công việc nhàm chán, lặp đi lặp lại này là gì? Nó thực hiện tất cả cho bạn — chỉ trong một vài dòng mã, không kém. Với Django, việc xây dựng giao diện quản trị là một vấn đề được giải quyết.

Nó tự động xây dựng các biểu mẫu HTML dựa trên CRUD để quản lý mô hình.

0

tôi vẫn là một cái gì đó của một con trăn và GAE newbie, nhưng tôi đã làm việc với nó rất nhiều trong vài tháng qua, do đó bạn có thể thấy rằng công trình này:

Bạn có thể sử dụng để có được những Model.properties() danh sách các thuộc tính cho mô hình được đề cập và lưu nó vào danh sách. Sau đó, bạn có thể thêm danh sách vào từ điển ngữ cảnh để sử dụng trong mẫu của bạn. Trong mẫu của bạn lặp qua vòng lặp để tạo danh sách cơ bản của các trường nhập với tên phù hợp với từng thuộc tính.

{% for tItem in list %} 
    <input type="text" name="{{ tItem }}" /> 
{% endfor %} 

Sau đó, bạn có thể đăng bài trở lại cùng một trang, nơi bạn có thể sử dụng để ghép Request.arguments() thuộc tính đối tượng của bạn để mô hình của bạn để lưu vào kho dữ liệu.

Kiến thức của tôi không phải là giải pháp thanh lịch hơn nhiều, ít nhất là không thể so sánh với giàn giáo ASP.NET MVC mà bạn đang nói đến.

(từ chối trách nhiệm: Tôi đã không thực sự cố gắng này vì vậy có khả năng là một vấn đề hoặc hai mà cần phải được sắp xếp)

1

Hãy xem dự án appengine admin.

AppEngine quản là gói python đơn giản mà bạn có thể sử dụng để tạo giao diện quản trị tự động cho ứng dụng Google AppEngine của bạn.

Đây là một ảnh chụp màn hình:

enter image description here

here là hướng dẫn QuickStart.

Sau khi tạo mô hình của bạn, bạn chỉ cần thêm dòng mã này:

# Register to admin site 
appengine_admin.register(..your list of class Models definition) 

và sau khi đã xác định con đường đúng đắn cho người quản trị với:

(r'^(/admin)(.*)$', appengine_admin.Admin) 

bạn có thể truy cập vào các quản trị viên tùy chỉnh mà cung cấp các tính năng sau:

  • Ghi lại danh sách cho từng mô hình đã đăng ký
  • Tạo hồ sơ mới
  • Cập nhật/chỉnh sửa hồ sơ
  • Xóa hồ sơ
0

Vấn đề với Django trên App Engine là bạn không thể sử dụng kho dữ liệu và NDB mô hình GAE (vì vậy admin Django không có sẵn) hoặc bạn phải bắt đầu sử dụng phiên bản bị tấn công của Django: http://django-nonrel.org/

Có lẽ đối với hầu hết các ứng dụng, bạn sử dụng Cloud SQL tốt hơn, về cơ bản là MySQL nên không có đầu dò với Django.

Nếu bạn cần phải sử dụng kho dữ liệu GAE thử khuôn khổ này, cung cấp một quản trị CRUD:
http://ferris-framework.appspot.com/docs/index.html

Các vấn đề liên quan