SAE python django 同步數據庫到線上
<span style="font-family: Arial, Helvetica, sans-serif; background-color: #ffffff;"> django數據庫建表不用寫MYSQL語句,直接在models.py中定義好model類,然后執行 python manage.py syncdb 就可以直接自動創建對應的表了。如下代碼所示</span>
class Publisher(models.Model): name = models.CharField(max_length = 30) address = models.CharField(max_length = 50) city = models.CharField(max_length = 60) state_province = models.CharField(max_length = 60) country = models.CharField(max_length = 50) website = models.URLField() class Author(models.Model): first_name = models.CharField(max_length = 30) last_name = models.CharField(max_length = 40) email = models.EmailField() class Book(models.Model): title = models.CharField(max_length = 50) authors = models.ManyToManyField(Author) publisher = models.ForeignKey(Publisher) publish_date = models.DateField() |
就可以建立對應的四個MSQ表格,這種做法本地操作沒問題,可以DJANGO項目部署到SAE上面如何實現呢?
1. 本地得安裝 SAE 環境
2. settings.py 中加入以下代碼
if True: from sae._restful_mysql import monkey monkey.patch() MYSQL_HOST_M = 'w.rdc.sae.sina.com.cn' MYSQL_PORT = '3307' MYSQL_USER = 'APP_ACCESS' MYSQL_PASS = 'APP_SECRET' MYSQL_DB = 'app_APP_NAME' DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': MYSQL_DB, 'USER': MYSQL_USER, 'PASSWORD': MYSQL_PASS, 'HOST': MYSQL_HOST_M, 'PORT': MYSQL_PORT, } } |
其中, APP_ACCESS, APP_SECRET, APP_NAME 都在sae的應用頁可以看到,換成你應用的相關代碼,然后執行 sync db 即可
執行完之后, True 改成 False
posted on 2014-02-13 16:09 順其自然EVO 閱讀(840) 評論(1) 編輯 收藏 所屬分類: 數據庫