Django 離線腳本

離線腳本能夠在Linux中作定時任務執行腳本。 也可以用於Django項目中,爲項目作一些其餘方便的操做(脫離項目運行,右鍵點擊運行)。 下面是在Django中往數據庫添加數據的例子。python

init_news.py數據庫

"""
初始化動態表,在動態表中添加一些數據,方便操做
"""
import os
import sys
import django
from api import models

# 獲取項目的根目錄
base_dir = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

sys.path.append(base_dir)	# 添加到系統環境變量
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "demos.settings")	# 加載項目的配置文件,demos是項目
django.setup()	# 啓動django

# 上面必須寫

# 添加數據
for i in range(1,37):
    news_object = models.News.objects.create(
        cover="https://mini-1251317460.cos.ap-chengdu.myqcloud.com/08a9daei1578736867828.png",
        content="還有{0}天就放假".format(i),
        topic_id=1,
        user_id=1
    )

    models.NewsDetail.objects.create(
        key="08a9daei1578736867828.png",
        cos_path="https://mini-1251317460.cos.ap-chengdu.myqcloud.com/08a9daei1578736867828.png",
        news=news_object
    )

    models.NewsDetail.objects.create(
        key="0d3q0evq1578906084254.jpg",
        cos_path="https://mini-1251317460.cos.ap-chengdu.myqcloud.com/0d3q0evq1578906084254.jpg",
        news=news_object
    )

models.pydjango

class News(models.Model):
    """
    動態
    """
    cover = models.CharField(verbose_name='封面', max_length=128)
    content = models.CharField(verbose_name='內容', max_length=255)
    topic = models.ForeignKey(verbose_name='話題', to='Topic', null=True, blank=True)
    address = models.CharField(verbose_name='位置', max_length=128, null=True, blank=True)
    user = models.ForeignKey(verbose_name='發佈者', to='UserInfo', related_name='news')

    favor_count = models.PositiveIntegerField(verbose_name='贊數', default=0)

    viewer_count = models.PositiveIntegerField(verbose_name='瀏覽數', default=0)

    comment_count = models.PositiveIntegerField(verbose_name='評論數', default=0)

    create_date = models.DateTimeField(verbose_name='建立時間', auto_now_add=True)

class NewsDetail(models.Model):
    """
    動態詳細
    """
    key = models.CharField(verbose_name='騰訊對象存儲中的文件名', max_length=128, help_text="用於之後在騰訊對象存儲中刪除")
    cos_path = models.CharField(verbose_name='騰訊對象存儲中圖片路徑', max_length=128)
    news = models.ForeignKey(verbose_name='動態', to='News
相關文章
相關標籤/搜索