APIView
-
-
エントリー機能
-
as_view
-
クエリセット検出
-
直接クエリセットを操作しないでください、複数のデータ間の直接操作は、障害が発生した要求します
-
全部またはget_querysetに推奨
-
-
親クラスas_viewを呼び出します
-
パラメータの検出
-
閉鎖機能を定義します
-
レコードデータ
-
ディスパッチ
-
-
-
ディスパッチ
-
メソッドのオーバーライド
-
要求は、変換(初期化)製
-
全体を初期化した後
-
接尾辞の書式を設定します
-
コンテンツの決定
-
決定版
-
必須のアップグレード
-
推奨アップグレード
-
いいえアップグレードありません
-
-
認証を行います
-
チェックパーミッション
-
スロットル、制限
-
-
配信要求のための方法
-
上記のプロセスは、異常と直接投げない異常を修飾する場合は、例外がキャッチされます
-
ポリシーの例外を提供
-
最終的な応答統一プロセス
-
最後に、リターン
ジェネリック
-
-
-
APIView
-
-
プロパティ
-
filter_backends
-
lookup_field
-
lookup_url_kwarg
-
pagination_class
-
クエリセット
-
serializer_class
-
-
方法
-
get_queryset
-
GET_OBJECT
-
get_serializer
-
get_serializer_class
-
get_serializer_context
-
filter_queryset
-
ページネータ
-
変更プロパティを使用します
-
-
paginate_queryset
-
get_paginated_response
-
-
-
CreateAPIView
-
受け継ぎます
-
GenericAPIView
-
CreateModelMixin
-
-
方法
-
役職
-
作ります
-
-
-
-
ListAPIView
-
受け継ぎます
-
GenericAPIView
-
ListModelMixin
-
-
方法
-
取得する
-
リスト
-
-
-
-
RetrieveAPIView
-
受け継ぎます
-
GenericAPIView
-
RetrieveModelMixin
-
-
方法
-
取得する
-
検索します
-
-
-
-
DestroyAPIView
-
受け継ぎます
-
GenericAPIView
-
DestroyModelMixin
-
-
方法
-
削除
-
破壊する
-
-
-
-
UpdateAPIView
-
受け継ぎます
-
GenericAPIView
-
UpdateModelMixin
-
-
方法
-
プット
-
更新
-
-
パッチ
-
partial_update
-
-
-
-
ListCreateAPIView
-
受け継ぎます
-
GenericAPIView
-
ListModelMixin
-
CreateModelMixin
-
-
方法
-
役職
-
作ります
-
-
取得する
-
リスト
-
-
-
-
RetrieveUpdateAPIView
-
受け継ぎます
-
GenericAPIView
-
RetrieveModelMixin
-
UpdateModelMixin
-
-
方法
-
取得する
-
検索します
-
-
プット
-
更新
-
-
パッチ
-
partial_update
-
-
-
-
RetrieveDestroyAPIView
-
受け継ぎます
-
GenericAPIView
-
RetrieveModelMixin
-
DestroyModelMixin
-
-
方法
-
取得する
-
検索します
-
-
削除
-
破壊する
-
-
-
-
RetrieveUpdateDestroyAPIView
-
受け継ぎます
-
GenericAPIView
-
RetrieveModelMixin
-
UpdateModelMixin
-
DestroyModelMixin
-
-
方法
-
取得する
-
検索します
-
-
プット
-
更新
-
-
パッチ
-
partial_update
-
-
削除
-
破壊する
ミックスイン
-
CreateModelMixin
-
機能
-
作ります
-
perform_create
-
get_success_headers
-
-
-
ListModelMixin(複数)
-
機能
-
リスト
-
-
-
RetrieveModelMixin(单数)
-
機能
-
検索します
-
-
-
UpdateModelMixin(单数)
-
機能
-
-
perform_update
-
partial_update
-
-
-
DestroyModelMixin(单数)
-
機能
-
破壊する
-
perform_destroy
使い方(簡単な登録ログイン)
- モデルを作成します。
クラスのユーザー(models.Model): u_name = models.CharField(max_lengthを= 32、=ユニーク真) u_password = models.CharField(MAX_LENGTH = 256 ) @classmethod デフGET_USER(CLS、u_name): 試してください: ユーザー = User.objects。 (u_name =取得u_name) リターン・ユーザー を除く:eと例外 印刷(e)を デフ(自己、パスワード)check_password: リターン self.u_password ==パスワード
- 生成された移行ファイル
- シリアライザを作成します。
クラスUserSerializer(serializers.ModelSerializer): クラスメタ: モデル = ユーザー フィールド =(" ID "、" u_name "、" u_password ")
- ルートを作成します。
urlpatterns = [ URL(R ' ^ユーザ/ ' 、views.UsersAPIView.as_view()) ]
- ビュークラスを作成します。
クラスUsersAPIView(CreateAPIView): クエリセット = User.objects.all() serializer_class = UserSerializer デフポスト(自己、要求、* argsを、** kwargsから): アクション = request.query_params.get(" アクション" ) であれば、アクション== " 登録" : リターン self.do_register(要求、* argsを、** kwargsから) ELIFのアクション== " ログイン" : リターン self.do_login(要求、* argsを、** kwargsから) 他: 調達にApiException(詳細= " [ログイン、登録]正しい行動を供給してください" ) デフ do_register(自己、要求、* argsを、** :kwargsから) プリント(タイプ(リクエスト)) 、印刷(タイプ(自己)) リターン自己を。 (要求、* argsを、**作成kwargsからの) デフ do_login(自己、要求、* argsを、** kwargsから): u_name = request.data.get(" u_name " ) u_password = request.data.get(" u_password " ) ユーザー = User.get_user(u_name) なら ないユーザー: 上げるにApiExceptionを(詳細= " 用户不存在" ) 場合 ではない(u_password)をuser.check_password: 上げるにApiException(詳細= " 密码错误を" ) トークン = 。uuid.uuid4()六角 #存トークン データ = { " MSG ":" OK " " ステータス" :HTTP_200_OK、 " トークン」:トークン } 返すレスポンス(データを)