2011-01-28 21 views
6

Bir uygulamayı bir Django projesinde oluşturdum. Test amaçlı olarak fikstür dosyaları oluşturmak istiyorum. Veri zaten varsa otomatik olarak fikstür oluşturmak için veritabanımı boşaltabileceğimi buldum. Bir fikstür kullanmak istiyorum, bu yüzden python ./manage.py dumpdata app komutunu kullandım, ancak \x02 bir ton listesini döndürdü. Ama ben python ./manage.py auth kullanırsanız, mükemmel çalışır. Benim dumpdata neden sadece \x02 gösterir herhangi bir fikir.python ./manage.py dumpdata uygulamasını kullanarak verileri atamıyor.

Şimdiden teşekkürler.

aşağıdaki bağlantı olarak ekran görüntüsü ekli:

http://www.cs.ait.ac.th/~fon/wp-content/uploads/2011/01/Screenshot.png

+0

yapar 'piton manage.py dumpdata uygulaması ile veri yüklenmesi gereken yazabilir | 'show'? – Ski

cevap

8

ben tamamen sorunuzu anlamak emin değilim. Verileri döktüğünüzde, bir fikstürde saklamanız gerekir. Bu blog yazısı kontrol edin: http://solutions.treypiepmeier.com/2008/09/28/use-django-fixtures-to-automatically-load-data-when-you-install-an-app/

Temelde böyle bir şey yapmak (uygulamanızın adıyla [app_name] değiştirin):

python manage.py dumpdata [app_name] > [app_name]/fixtures/initial_data.json 

Muhtemelen uygulamanız için fikstürler dizini oluşturmak gerekecektir.

Eğer ./ Yazdığınız piton gerekmiyorsa otomatik Ayrıca

/fixtures/initial_data.json konumu [app_name] içinde armatürleri arayacaktır syncdb piton manage.py çalıştırdığınızda. yani oturum

python manage.py ... 

yerine

python ./manage.py ... 
+0

Zaten "python manage.py dumpdata app --format = json --indent = 8> app/fikstür/ffixture.json" Yaptım "Hiç çalışmıyor. Dosyada hiçbir şey gösterilmiyor ve sadece yazdırılıyor"/x01/x02 'ekranda böyle bir şey. – Fon

+1

Tek charfield ile tek bir modelle gerçekten basit bir uygulama oluşturmayı deneyin. Yönetici'de bir şeyler doldurun ve dumpdata komutunu tekrar çalıştırın ve aynı şeyi yapıp yapmadığını görün. – joshcartme

+0

Şimdi bu hata parçasını buldum. Çok teşekkürler. :) – Fon

0

daha sen python manage.py dumpdata app > datafile çalıştırın ve sonra python manage.py loaddata datafile

+0

Zaten yaptım ama veri dosyasına hiçbir şey yazmıyor :( – Fon

0
import dump 

dump.accept(var, 'file eg: text.txt') 
+0

"ImportError: Dump adlı bir modül yok", bu modülü nerede bulabilirim/kurabilirim? – rraallvv

İlgili konular