Soru Yerel Google App-engine veri mağazamdaki tüm varlıkları nasıl silerim?


Dev_appserver'ımdaki tüm varlıkları nasıl kaldırabilirim veya yerel veri deposunu nasıl sıfırlayabilirim? Yanlışlıkla özyinelemeli olarak test yaparken bir varlık oluşturmak için bir işlev çağırdım.

Vista'da Google App-engine SDK'sını Python ile kullanıyorum.


32
2018-06-18 03:04


Menşei




Cevaplar:


dev_appserver.py --clear_datastore=yes myapp

Görmek İşte daha fazla bilgi için.

Shorthand sürümü:

dev_appserver.py -c

31
2018-06-18 03:06



Vay, emin olmak istedim. teşekkür ederim - Jason Rikard
App Engine Launcher'ı kullanıyorsanız, "Ekstra Komut Satırı Bayrakları" alanına bayrakları Düzenle> Uygulama Ayarlarına giderek ekleyerek de yapabilirsiniz. - jesal
Bu eskimiş ya da bir şey gibi görünüyor ... Kullanmaya çalışırken hataları alıyorum - Or Gal
Bu işe yaramadı ama bu dev_appserver.py [app directory] --clear_datastore doğru yaptı - Or Gal
Tüm "hedef" dizini silmeden, bunun neden işe yaradığına dair herhangi bir fikir yok mu? Veri deposu tam olarak nerede saklanıyor? - dzimney


Buraya geldiysen Java çözümü: Aşağıdaki dosyayı silin:

{project root}/WEB-INF/appengine-generated/local_db.bin

Projenizi yeniden oluşturun ve yeniden başlatın.


18
2018-04-09 08:59



Bu dizini projede bulamıyorum - serj
Bu dosyayı buldum out/artifacts/xxxx_war_exploded/WEB-INF/appengine-generated, dosya şaşırtıcı derecede küçük görünüyor, ancak - muhtemelen sadece bir tür indeks, gerçek veriler (lekeler?) muhtemelen başka bir yerde saklanır. Silme işlemini tamamlamak için sunucuyu yeniden başlatmam gerekiyordu. - Suma


dev_appserver.py [uygulama dizini] --clear_datastore true

Bağlantı noktalarını serbest bırakmak için çalışıyorsa sunucuyu kapatmanız gerekir


4
2017-12-20 09:02





Yapılması gereken yararlı bir şey her zaman belirtmek gerekirse --datastore_path, ör. --datastore_path = test.datastore.

Bunu silmek için dosyayı silebilirsiniz. Ayrıca kopyaları saklayabilir ve takas edebilir ve değiştirebilirsiniz. Ve mağaza yeniden başlatmalara devam edecektir (Linux'ta zaten / tmp / varsayılan konum, temizlendiğinde)


2
2018-03-25 15:36





Üretimde - gidebilirsin appengine gösterge tablosu => Datastore yöneticisi


0
2018-03-27 08:14





İşte dev_appserver çalıştırdıktan sonra çıktı

INFO     2017-03-21 15:07:36,085 devappserver2.py:764] Skipping SDK update check.
INFO     2017-03-21 15:07:38,342 api_server.py:268] Starting API server at: http://localhost:63970
INFO     2017-03-21 15:07:38,349 dispatcher.py:199] Starting module "default" running at: http://localhost:8080
INFO     2017-03-21 15:07:38,373 admin_server.py:116] Starting admin server at:

Ben de gidiyorum http: // localhost: 8000 ve yerel App Engine Yönetici Konsolu'na gidip veri deposu varlıklarını düzenleyebilir / silebilirim.


0
2018-03-21 15:14





üretimde bu da kullanışlı olabilir (veya güvenlik kabusu olabilir).

# will DELETE the database use http://localhost:8083/deletemodels?force=true
class DeleteModels(webapp.RequestHandler):
    def get(self):

    def dMsg(msg):
      self.response.out.write(msg + '\n')
    n = self.request.get('force')
    if n:
      dMsg('clearing YourModelHere data....')
      for uc in YourModelHere.all():
               uc.delete()
               dMsg('.')
      dMsg('clearing YouNextModelHere data....')           
      for uc in YouNextModelHere.all():
               uc.delete()
               dMsg('.')     

-1
2018-05-06 11:06



Üretimde, aynı zamanda bir Silme Görevini sunan Datastore Yöneticisi'nden de yapabilirsiniz. - hyperslug