日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

cnblog项目--20190309

發(fā)布時間:2025/4/14 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 cnblog项目--20190309 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
第一個真正意義的Django項目 ! 預(yù)計時間5天 ?20190309--20190314 目標(biāo):學(xué)會Django的使用,理解模塊關(guān)系! ? querset ?相當(dāng)于一個存放列表的字典 day1 20190309? 1.1 引入環(huán)境 ,配置static靜態(tài)文件,并引入 bootstrap下的dist文件和 jquery STATIC_URL?=?'/static/'
STATICFILES_DIRS=[os.path.join(BASE_DIR,'static')] 這樣下次引入時,會一直使用路徑別名 ?/static/ ,需注意的是項目啟動時是以manage.py文件為原始目錄來查找路徑,而自己測試html時是以該文件的路徑為原始路徑。 創(chuàng)建了超級用戶 yeteng/yeteng123 1.2 創(chuàng)建和刪除用戶 #生成新用戶,修改狀態(tài)表
newuser=User.objects.create_user(username=username,password=password,email=email)
#?#?刪除用戶的操作
#?deluser?=?User.objects.get(id=2)
#?deluser.delete() 1.3bootstrap中的居左和居右

1、pull-left和pull-right

2、text-left、text-center和text-right 1.4? 三個簡單實(shí)用的用于 DOM 操作的 jQuery 方法:
  • text() - 設(shè)置或返回所選元素的文本內(nèi)容 ?--其他標(biāo)簽
  • html() - 設(shè)置或返回所選元素的內(nèi)容(包括 HTML 標(biāo)記) --其他標(biāo)簽
  • val() - 設(shè)置或返回表單字段的值 ? -- 對應(yīng)input ?textarea輸入標(biāo)簽
day2 20190313 2.1?modles.py 中定義表class時的blank與null 區(qū)別 blank: 當(dāng)blank=True時,說明此處的數(shù)據(jù)可以不填,默認(rèn)情況下為False,也就意味著默認(rèn)情況下,所輸入的數(shù)據(jù)不得空,blank是和頁面表單?有關(guān),在頁面需要輸入?yún)?shù)的時候,如果在models里面定義了blank=True時,那么這個參數(shù)是可以不填寫的,如果是默認(rèn)的話,如果沒有填寫,則會提示錯誤。 null: 當(dāng)null=True時,也就是說如果沒有填寫數(shù)據(jù),此處用NULL來儲存空值,默認(rèn)的是null=False。 總結(jié):blank主要是用在CharField, TextField,這兩個字符型字段可以用空字符穿來儲存空值。 null主要是用在IntegerField,DateField, DateTimeField,這幾個字段不接受空字符串,所以在使用時,必須將blank和null同時賦值為True。 順便一提,在設(shè)置BooleanField為空時,可以使用NullBooleanField型字段。 ? ?? 2.2?在通過AbstractUser類創(chuàng)建用戶類時,可添加自定義字段,同時必須注意的是繼承該類必須在setting.py中聲明使用,一旦指定了新的認(rèn)證系統(tǒng)使用的表,必須重新在數(shù)據(jù)庫中創(chuàng)建該表,不能使用原來的auth_user表 #?引用Django自帶的User表,繼承使用時需要設(shè)置
AUTH_USER_MODEL?=?"APP名.UserInfo" django.db.migrations.exceptions.InconsistentMigrationHistory 查看了網(wǎng)上其他博客后:大多建議刪除?django_migrations表并刪除migration目錄下的0001_initial.py(并不能解決問題): 因?yàn)楫?dāng)你重新遷移是,并不能成功的映射新的數(shù)據(jù)庫表: 這里只有刪除main下除sqlite_master和sqlite_sequence表下的其他表然后重新執(zhí)行 python manage.py makemigrations python manage.py migrate 才能遷移成功: Django中刪除和重建數(shù)據(jù)庫中關(guān)于models類的映射數(shù)據(jù)庫表的正確方法: 在Django中刪除models類的映射數(shù)據(jù)庫表需要在models.py中剪切或刪除對應(yīng)的models類:然后在控制臺中執(zhí)行: python manage.py makemigrations(Django會重新對照你的models類與數(shù)據(jù)庫中的映射表,如果你的model類被刪除,則Django會生成一個刪除遷移) python manage.py migrate(執(zhí)行刪除遷移,刪除數(shù)據(jù)庫中對應(yīng)的model映射表) 原文:https://blog.csdn.net/follow_sunshine/article/details/81485222 day3 20190314 ? 在 admin界面可以看到注冊的表,需配置 admin.py文件 from?django.contrib?import?admin
from?blog?import?models

#?Register?your?models?here.
#?注冊后可在?前端admin直接查看
admin.site.register(models.Blog)
admin.site.register(models.Category)
admin.site.register(models.Article)
admin.site.register(models.ArticleDetail)
admin.site.register(models.Tag)
admin.site.register(models.Article2Tag) ? <!--?注意html這里取一個列表的第幾個值,直接?.數(shù)字就可以,如?list.1?;list[1]會報錯?--> django.template.exceptions.TemplateSyntaxError: Could not parse the remainder: '[0]' from 'cate[0]' annotate 會將查詢結(jié)果全部字段作為group by 內(nèi)容 ,括號里的函數(shù)作為select對象. 例如:???? models.values("AAA").annotate.(C=count(artid)).values("BBB") 對應(yīng)SQL:? select "AAA|BBB的查詢字段",count(artid) as C from tab1,tab2 .. ?????????????? where xxxxxxxxxx ?????????????? group by "AAA|BBB的查詢字段" 有一個坑,如果 "AAA|BBB的查詢字段" 包括了 artid,那么分組結(jié)果往往不是你想要的,注意剔除掉 day4 20190315 python(Django之html模板繼承)? 關(guān)鍵字:extends ? block 鏈接: ?https://www.cnblogs.com/lei0213/articles/6410410.html day5 20190316 ? 關(guān)于Django中修改js css文件但瀏覽器無法及時與之改變的問題 https://blog.csdn.net/g11d111/article/details/79032287 瀏覽器——> 設(shè)置——> 高級——>清除瀏覽數(shù)據(jù) ——> 清除緩存和圖片,即可 事物:transaction ? ?不用前端序列化的json:JsonResponse def?diggit(request):
? ? from?django.db?import?transaction
? ? from?django.db.models?import?F
? ? from?blog?import?models

? ? print("diggit---------------11111")
? ? if?request.is_ajax():
? ? ? ? article_id=request.POST.get("article_id")

? ? ? ? print(request.user.username,article_id,"-----")
? ? ? ? user=request.user
? ? ? ? article=models.Article.objects.filter(articleid=article_id)
? ? ? ? art_state={"state":False}
? ? ? ? #?在點(diǎn)贊表中加一個?用戶和文章的記錄,同時文章表的點(diǎn)贊數(shù)+1,這兩個是事物
? ? ? ? try:
? ? ? ? ? ? with?transaction.atomic():
? ? ? ? ? ? ? ? #?方法一
? ? ? ? ? ? ? ? models.ArticleUpDown.objects.create(user_id=user.userid,article_id=article_id)
? ? ? ? ? ? ? ? #?方法二
? ? ? ? ? ? ? ? #?models.ArticleUpDown.objects.create(user=user,article=article[0])
? ? ? ? ? ? ? ? article.update(up_count=F("up_count")+1)
? ? ? ? ? ? ? ? art_state={"state":True}
? ? ? ? except:
? ? ? ? ? ? pass

? ? #?django?下的json,在前端不需要反序列化
? ? from?django.http?import?JsonResponse return?JsonResponse(art_state) 點(diǎn)擊跳轉(zhuǎn)到其他盒子的方法: 方法一HTML5中a標(biāo)簽的錨點(diǎn)使用 ?通過id跳轉(zhuǎn) ? <a?href="#d3">我在找OA系統(tǒng)</a><br/> https://blog.csdn.net/chanzhi2016/article/details/80003393 ? 方法二,js下id獲取焦點(diǎn)方法 ? $("#d3").focus()? day6 20190317 事件委派 ?jquery下的on方法(原生js語法不一樣): on(事件類型,標(biāo)簽<.class,#id,標(biāo)簽>,委派的方法): 好處:1.如果子標(biāo)簽較多,不用一個個for循環(huán)加事件,消耗內(nèi)存,增加程序處理的個數(shù) 2.新添加的子標(biāo)簽將會直接獲得事件,如博客添加的新評論,直接將事件放在父級,新加的評論ajax到頁面馬上擁有相關(guān)事件。 1? $(function(){
2? ? ? ? ? ? ?$("#lists").on("click","li",function(event){
3? ? ? ? ? ? ? ? ?var?target?=?$(event.target);
4? ? ? ? ? ? ? ? ?target.css("background-color","red");
5?? ? ? ? ? ? })
6? ? ? ? ?}) Django模板中的數(shù)字自增 https://www.bbsmax.com/A/1O5EB0Bbd7/ forloop.counter --------------------end! --------------------------------------------cnblog項目--20190309

轉(zhuǎn)載于:https://www.cnblogs.com/yeteng/p/10554442.html

總結(jié)

以上是生活随笔為你收集整理的cnblog项目--20190309的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。