Django 常用工具 import 常用模塊

Django 工具

from django.db.models.signals

  • import post_save 保存
  • post_delete 刪除

from django.dispatch

  • import receiver 接受者,接收到之后鏈接響應(yīng) eg: @receiver(post_save) 鏈接 post_save 信號(hào)和處理方法

from django.conf

  • import settings 公共的設(shè)置類

from django.contrib.sites.models

  • import Site 站點(diǎn)信息 clear_site_cache Site.objects.get_current().domain

django.views.decorators.http

  • @require_http_methods(["GET", "POST"])
  • @require_POST()
  • @require_GET()

django.shortcuts

  • render(request, template_name[, context字段][, content_type 響應(yīng)內(nèi)容類型][, status狀態(tài)][, current_app當(dāng)前APP][, dirs][, using])[source]
  • render_to_response(template_name[, context][, context_instance][, content_type][, status][, dirs][, using])[source]
  • redirect(to, [permanent=False, ]*args, **kwargs)[source]
    一個(gè)模型(get_absolute_url() ) 一個(gè)視圖(將使用urlresolvers.reverse 來反向解析名稱) 一個(gè)絕對(duì)的或相對(duì)的URL,將原封不動(dòng)的作為重定向的位置
  • get_object_or_404(klass, *args, **kwargs) class 類 參數(shù)(可被查詢)
    get_object_or_404(MyModel, pk=1)
  • get_list_or_404(klass, *args, **kwargs)

from django.views

  • import generic generic.ListView generic.DetailView

快速生成

from rest_framework import routers, serializers, viewsets

Serializers定義了API的表現(xiàn).

class UserSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = User
fields = ('url', 'username', 'email', 'is_staff')

ViewSets 定義了 視圖(view) 的行為.

class UserViewSet(viewsets.ModelViewSet):
queryset = User.objects.all()
serializer_class = UserSerializer

Routers 提供了一種簡(jiǎn)單途徑,自動(dòng)地配置了URL。

router = routers.DefaultRouter()
router.register(r'users', UserViewSet)

from kapp.models import SMURLTypeModel

class SMURLTypeSerializer(serializers.HyperlinkedModelSerializer):
    class Meta:
        model = SMURLTypeModel
        fields = ('type', 'name')

class SMURLTypeViewSet(viewsets.ReadOnlyModelViewSet):
    queryset = SMURLTypeModel.objects.all()
    serializer_class = SMURLTypeSerializer

router.register(r'smurltype', SMURLTypeViewSet)
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容