1. 程式人生 > >Rest Framework第六天-路飛學城專案分析、contentType元件、django快取機制、跨域問題

Rest Framework第六天-路飛學城專案分析、contentType元件、django快取機制、跨域問題

1 路飛學成專案分析     -主站         課程系列:             -所有課程(專題課,學位課)             -課程詳情             -視訊播放             -課程章節             -課程評論             -課程價格策略             -加入購物車             -支付中心             -去支付(調支付寶支付)         首頁         輕課         個人中心:             登陸             註冊             個人中心              -管理員後臺              -導師後臺

2 ContentType元件     解決什麼問題:表的id和資料id,來唯一確定一條資料     用:         插入資料:              models:content_obj = GenericForeignKey('table_id', 'course_id')              存:models.PricePolicy.objects.create(period=5, price=18000, content_obj=degree)                  查詢資料:             1 通過課程查價格策略:                policy = GenericRelation('PricePolicy', object_id_field='course_id', content_type_field='table_id')                course.policy.all()   拿出所有價格策略             2 通過價格策略查課程                 content_obj = GenericForeignKey('table_id', 'course_id')                 price.content_obj    拿到的就是課程物件     

3 Django快取機制     三個粒度:     1 全站快取         用中介軟體:         MIDDLEWARE = [             # 'django.middleware.cache.UpdateCacheMiddleware',             'django.middleware.security.SecurityMiddleware',             。。。。。。             # 'django.middleware.cache.FetchFromCacheMiddleware'

            ]         # CACHE_MIDDLEWARE_SECONDS=10     2 單檢視:         用裝飾器         from django.views.decorators.cache import cache_page         # @cache_page(24*60*60)     3 區域性頁面:         {% load cache %}         {% cache 5 'test' %}   兩個引數:時間,唯一標識         {{ ctime }}         {% endcache %}

4 跨域請求     1 瀏覽器的同源策略     2 簡單請求:發一次請求         response['Access-Control-Allow-Origin'] = '*'         response['Access-Control-Allow-Origin'] = 'http://127.0.0.1:8008,http://127.0.0.1:8009'     2 非簡單請求:發兩次,一次預檢(OPTIONS),第二次是真正的請求         if request.method=='OPTIONS':             response['Access-Control-Allow-Methods']='PUT,DELETE'             response['Access-Control-Allow-Headers']='Content-Type'     建議寫再中介軟體裡     註釋:裡面儘量不要寫(*),都支援(*)

安裝vue腳手架 先裝node.js

從官網下載並安裝node.js

npm install -g @vue/cli

vue create my-project

cd 到 my-project 目錄中,啟動 npm run serve

npm run serve

npm install axios