• <noscript id="e0iig"><kbd id="e0iig"></kbd></noscript>
  • <td id="e0iig"></td>
  • <option id="e0iig"></option>
  • <noscript id="e0iig"><source id="e0iig"></source></noscript>
  • Django sqlite3的實際應用

    標簽: Django  python

    db.html(模板)

    <!DOCTYPE html><html lang="ja">
    <head>
    <title>{{context.title}}</title>
    	<link rel="icon" href="/static/pic/1.jpg" type="image/x-icon" />
        <link rel="shortcut icon" href="/static/pic/1.jpg" type="image/x-icon" />
    <script>
    
    </script>
    <style type="text/css">
    
    <!--
    .box{
    	float: left; 
    	color:black;
    	font-size:12px;
    	text-align:leftwards;
    	}
    -->
    </style>
    </head>
    <body>
    {% if context.person.1 < 18 %}
    <h3 align="center">時間:{{context.time | date:"Y-m-d H:i:s" }}</h3>
    {% else %}
    <h3 align="center">時間:{{context.time | date:"Y-m-d H:i:s" }}</h3>
    {% endif %}
    <div>
    	{% if context.member_list %}
    		{% for li in context.member_list %}
    		<div style="float:left;width:22.5%;">
    			{% load static %}
    				<div class="box" >				
    					<video muted width="400" height="270" controls  preload="none">
    					  <source src="/static/{{li.address}}" type="video/mp4">
    					</video>
    				</div>
    				<div class="box" >
    					<p>
    						名前:{{li.name}}
    					<br>
    						年目:{{li.age}}
    					<br> 
    						メール:{{li.address}}
    					<br> 
    						時間:{{li.inttime}}
    					<br> 
    						地點:{{li.area}}
    					<br> 
    					</p>
    				</div>
    		</div>	
    	{% empty %}
    		<li>no!</li>
    		{% endfor %}
    	{% endif %}
    </div>
    {% load mydigit %}
    	<br>
    	<br>
    	<p align="right">數量:{{context.num | mydigit:4}} </p>
    </body>
    </html>
    

    models.py

    from __future__ import unicode_literals
    from django.db import models
    
    
    class Member(models.Model):
        id = models.IntegerField(primary_key=True)
        name = models.CharField( max_length=40)  # Field name made lowercase.
        age = models.IntegerField()  # Field name made lowercase.
        address = models.CharField(max_length=100)  # Field name made lowercase.
        inttime = models.DateTimeField()
        area = models.CharField(max_length=40)
    
        class Meta:
            managed = False
            db_table = 'member'
    

    views.py#向數據庫member里進行增刪改查操作

    def data(request):
        template=loader.get_template("db.html")
        pic_root="J:/flod/pic_image/FC-2/fc2/vedio/"
        member_data=["相澤南","波多野ゆい","あやみ旬果","小沢まりあ","鈴村愛理","蒼い空","明日花キラ","蒼い空","七海奈々","葵司","天海翼","asuka","......"]
        root = os.listdir(pic_root)
        member_list=[]
        
        #增添
        #在數據庫表批量加入數據
        #for i in range(len(member_data)):
        #member_list.append( [member_data[i],random.randint(10,45),root[i],"2020-09-04","Japan"])
        #db=Member(name=member_data[i],age=21,address=str(root[i]),inttime="2020-09-04",area="Japan")
        #db.save()
        
        #查找
        #獲取數據庫表所有信息
        member_list=Member.objects.all()
        #信息排序
        #member_list=Member.objects.all().order_by("age")#升序member_list=Member.objects.order_by("age")
        #member_list=Member.objects.all().order_by("-age")#降序
        #過濾
        #member_list=Member.objects.filter(age = 16)    #age=16
        #member_list=Member.objects.filter(age__gt = 16)#age>16
        #member_list=Member.objects.filter(age__gte 16)#age>=16
        #member_list=Member.objects.filter(name__contains = "張")#篩選姓張的人
    
        #修改
        #member_data=Member.objects.get(id=1)
        #member_data.age=25
        #member_data.area="中國"
        #member_data.save()
    
        #刪除
        #Member.objects.all().delete()
        #Member.objects.filter(id=1)
    
        context={"title":"日本語の世界に入ってくだい!","time":datetime.datetime.now(),"member_list":member_list,"num":len(member_list)}
        request_context = RequestContext(request, context)
        request_context.push(locals())
        html=template.render(context=locals(), request=request)
        return HttpResponse(html)
    

    urls.py#訪問網址

    urlpatterns = [
        url(r'^admin/', admin.site.urls),
        url(r"^data/$", views.data), 
    ]
    

    setting.py#數據庫配置

    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.sqlite3',
            'NAME': os.path.join(BASE_DIR, 'data.sqlite3'),
        }
    }
    

    出現編碼問題

    views.py加入
    import sys
    reload(sys)
    sys.setdefaultencoding('utf-8')	
    

    在這里插入圖片描述
    名前、年目、メール、時間、地點從數據庫獲取。

    命令操作

    cd /d root 切換目錄
    
    manage.py makemigrations appname  記錄我們對appname/models.py的所有改動
    manage.py makemigrations                  記錄我們對所有models.py的所有改動
    manage.py migrate        同步數據庫
    manage.py inspectdb  檢測數據庫,自動生成 Django 模型
    manage.py inspectdb > blog_/models.py 自動生成 Django 模型與本地對比,生成缺少的模型信息
    

    遇到問題
    models.py增加字段后,需要重新生成數據表時,刪除migrations目錄,以及數據庫里有關的數據表, 重新執行命令生成。(有時執行命令報錯,參照刪除即可。但有時刪除信息后,不會報錯,重新生成卻不包含定義的數據表。有時生成的包含數據表,原因不知。
    方法:修改配置文件數據庫名稱,重新生成)

    版權聲明:本文為qq_38641985原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。
    本文鏈接:https://blog.csdn.net/qq_38641985/article/details/108410331

    智能推薦

    Django 2.1.7 基于默認sqlite3 模型設計 以及 數據操作

    上一篇章講述了如何創建項目,本篇章主要講解Django的模型設計。 參考文獻 Django 官網 2.1 文檔 一般操作數據庫是通過寫sql語句,那么能不能不寫sql語句就可以操作數據庫呢? 可以,就是通過接下來要給大家講的ORM框架。 本篇章首先使用Django默認使用的sqlite3,后續再繼續講解使用mysql。 ORM框架 O是object,也就類對象的意思,R是relation,翻譯成中...

    在Django 2.2中啟動開發服務器時處理SQLite3錯誤

    報錯信息 當python3 manage.py runserver啟動django項目的時候,就會出現報錯信息如下: django.core.exceptions.ImproperlyConfigured: SQLite 3.8.3 or later is required (found 3.7.17). 查看系統的sqlte3的版本 果然Centos系統自帶的sqlite3版本偏低,在上面的錯誤...

    Django2 SQLite3遷移到MySQL數據庫

    Django2 SQLite3遷移到MySQL數據庫 本文轉自:https://blog.csdn.net/weixin_34257076/article/details/86843658  Windows開發環境下 首先在系統內安裝mysql,創建mysql連接配置文件,該文件可保存在本機任何地方,如果項目要上傳到github上或其他共享,mysql帳密不可能讓別人知道呀 項目的_in...

    Django2 SQLite3遷移到MySQL數據庫

    更多內容請點擊 我的博客 查看,歡迎來訪。 Django2 SQLite3遷移到MySQL數據庫 開發環境Windows+Django2.1+Python3.7,服務器環境Ubuntu16.04+Django2.1+Python3.6.6 Windows開發環境下 創建mysql連接配置文件 該文件可保存在本機任何地方,如果項目要上傳到github上或其他共享,mysql帳密不可能讓別人知道呀 P...

    Django使用sqlite3數據庫(嘔心瀝血終于成功了)

    首先,Django默認使用的就是sqlite3,而大多數人一上來就是使用MySQL,配置更加復雜,搞了一兩個小時也沒弄好(我太菜了,,,)對于小的網站項目,使用sqlite3足以。 首先,需要安裝sqlite3 如果使用的是VSCode,可以直接搜索sqlite插件安裝即可。 或者,到官方下載地址下載。SQLite3的下載地址:http://www.sqlite.org/download.html...

    猜你喜歡

    HTML中常用操作關于:頁面跳轉,空格

    1.頁面跳轉 2.空格的代替符...

    freemarker + ItextRender 根據模板生成PDF文件

    1. 制作模板 2. 獲取模板,并將所獲取的數據加載生成html文件 2. 生成PDF文件 其中由兩個地方需要注意,都是關于獲取文件路徑的問題,由于項目部署的時候是打包成jar包形式,所以在開發過程中時直接安照傳統的獲取方法沒有一點文件,但是當打包后部署,總是出錯。于是參考網上文章,先將文件讀出來到項目的臨時目錄下,然后再按正常方式加載該臨時文件; 還有一個問題至今沒有解決,就是關于生成PDF文件...

    電腦空間不夠了?教你一個小秒招快速清理 Docker 占用的磁盤空間!

    Docker 很占用空間,每當我們運行容器、拉取鏡像、部署應用、構建自己的鏡像時,我們的磁盤空間會被大量占用。 如果你也被這個問題所困擾,咱們就一起看一下 Docker 是如何使用磁盤空間的,以及如何回收。 docker 占用的空間可以通過下面的命令查看: TYPE 列出了docker 使用磁盤的 4 種類型: Images:所有鏡像占用的空間,包括拉取下來的鏡像,和本地構建的。 Con...

    requests實現全自動PPT模板

    http://www.1ppt.com/moban/ 可以免費的下載PPT模板,當然如果要人工一個個下,還是挺麻煩的,我們可以利用requests輕松下載 訪問這個主頁,我們可以看到下面的樣式 點每一個PPT模板的圖片,我們可以進入到詳細的信息頁面,翻到下面,我們可以看到對應的下載地址 點擊這個下載的按鈕,我們便可以下載對應的PPT壓縮包 那我們就開始做吧 首先,查看網頁的源代碼,我們可以看到每一...

    精品国产乱码久久久久久蜜桃不卡