2011-07-23 6 views
6

Stworzyłem zestaw modeli dla mojej bazy danych za pomocą języka Python. Teraz chciałbym szybko załadować je z pewnymi danymi - ręcznie. Gdyby to była aplikacja .NET, użyłbym jednej ze sprytnych formantów, które pochodzą z Visual Studio, by szybko połączyć się z bazą danych i powiązać z nią siatkę. Następnie przejdź do miasta, dodając dane.Jaki jest najszybszy sposób generowania stron internetowych CRUD dla Google App Engine przy użyciu Pythona?

Jaki jest pasujący sposób na to w Pythonie za pomocą Google App Engine?

W środowisku ASP.NET MVC mają one nowe "rusztowania" (część Entity Framework), które będą generować strony CRUD. Czy jest coś takiego z grupą obiektów Model w GAE?

P.S. używając poręcznych, dandysowych opcji wiersza poleceń --use_sqlite i --datastore_path, mogę szybko utworzyć kopię zapasową mojej bazy danych w moim środowisku programisty, kiedy to zrobię.

Odpowiedz

3

Jeśli używasz Django na GAE następnie można użyć Django Administration site:

Więc jakie jest podejście Django do tych nudnych, powtarzalnych zadań? To wszystko sprawia, że ​​jest to tylko kilka linii kodu, nie mniej. Z Django budowanie interfejsu administratora jest rozwiązanym problemem.

Automatycznie tworzy formularze HTML oparte na CRUD do zarządzania modelem.

0

nadal jestem czymś w Pythonie i GAE początkujących, ale pracuję z nim wiele w ciągu ostatnich kilku miesięcy, więc może się okazać, że to działa:

można użyć, aby uzyskać Model.properties() listę właściwości dla danego modelu i zapisać go na liście. Następnie możesz dodać listę do słownika kontekstowego do użycia w szablonie. W szablonie wykonaj iterację w pętli, aby wygenerować podstawową listę pól wejściowych z nazwami pasującymi do każdej właściwości.

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

Następnie można zakładać z powrotem do tej samej strony, gdzie można wykorzystać Request.arguments() powiązać swoje właściwości obiektu do modelu do zapisywania do magazynu danych.

Zgodnie z moją wiedzą, nie ma o wiele bardziej eleganckiego rozwiązania niż to, przynajmniej nieporównywalne z rusztowaniem ASP.NET MVC, o którym mówisz.

(disclaimer: I już nie faktycznie próbowałem, więc nie jest prawdopodobne, problem lub dwa, że ​​musi być sortowane)

1

Zapoznaj się z projektem appengine admin.

AppEngine Admin jest prosty pakiet python, które można wykorzystać do tworzenia automatyczny interfejs administracyjny dla aplikacji Google App Engine.

Oto zrzut ekranu:

enter image description here

i here jest poradnik Szybki Start.

Po stworzeniu modeli, po prostu dodanie tego wiersza kodu:

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

i po zdefiniowaniu właściwą drogę do administratora z:

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

można uzyskać dostęp do spersonalizowanych Administrator że oferuje następujące funkcje:

  • Lista rekordów dla każdego zarejestrowanego modelu
  • Tworzenie nowych rekordów
  • Aktualizacja/edit rekordy
  • usuwanie rekordów
0

Kłopot z Django na App Engine to nie można używać modeli magazynu danych i NDB GAE (tak admin Django nie jest dostępny), lub musisz zacząć używać zhakowanej wersji Django: http://django-nonrel.org/

Cóż, pewnie dla większości aplikacji lepiej jest używać Cloud SQL, co jest w zasadzie MySQL, więc nie ma problemu z Django.

Jeśli trzeba użyć magazyn danych GAE spróbować tej ramy, która zapewnia administratora CRUD:
http://ferris-framework.appspot.com/docs/index.html

Powiązane problemy