Westagram -2

2776 ワード

westartgram-2の目的:会員加入


[Mission 2]会員登録サイト
会員入選表に記入してください.
作成したユーザークラスを読み込みます.
すべてのクラスを一度にインポートすることはできません.
私が使うクラスを正確に指摘してください.
インスタグラムに会員登録する場合は、ユーザーアカウント(電子メール)が必要です.
インスタグラムに会員登録する場合は、パスワードも必要です.
電子メールまたはパスワードキーが送信されていない場合は、{"message":"KEY ERROR"}status code 400が返されます.
会員登録時にEメールを使用すると、Eメールに@とが表示されます.含める必要があります.この条件が満たされていない場合は、適切なエラーを返します.このプロセスは、Eメール認証と呼ばれます.
会員入学試験のパスワードは8桁以上でなければなりません.条件が満たされていない場合は、対応するエラーを返します.このプロシージャをパスワード検証と呼びます.
会員登録の際、異なる人は同じ電話番号、ユーザー名、電子メールを使用しないため、既存の資料と重複することはできません.適切なエラーを返してください.
登録に成功すると、{message:[SUCCESS]}、status code 201が返されます.
一般式を使用して、Eメールまたはパスワードを検証します.
2-1 models.pyによるdbの実装
from django.db import models
# Create your models here.

class Userinfo(models.Model):
    
from django.db import models

# Create your models here.

class Userinfo(models.Model):

    Name        = models.CharField(max_length=50,unique=True)
    phone_num   = models.CharField(max_length=50,default=0)
    email       = models.CharField(max_length=50,unique=True default=0)
    password    = models.CharField(max_length=50,unique=True)
   
	 def __str__(self):
        return f'{self.name}'

    class Meta:
        db_table='userinfo'

  • 会員加入のため、name、email、password、phone num欄が設けられています.

  • 重複除外のためにUniqueが設定されています.

  • strデセットとしてshellで検索すると、リターンを受信するフォーマットが決定されます.

  • class meta=db table実際のデータベースに表示されるテーブル名の小文字+複数
  • user/Views.pyによるAPIロジックの実装
    import json
    import bcrypt
    import jwt
    from django.http import HttpResopnse, JsonResponse
    from djaogn.views import View
    from django.db.models import Q
    from django.core.validators import validate_email, ValidationError
    from .models import Userinfo

  • import json:クライアントが要求するデータはjson形式で、json形式でPythonを送信するにはimport jsonが必要です.

  • import bcrypt、jwt認証が必要

  • bcryptは,復号を防止するために一方向ハッシュの暗号化動作とするために必要なアルゴリズムである.パスワードをさらに強化するため、リクエスト時にsalting送信を追加します.

  • jwt:認証が完了した人がログインしようとすると、サーバは多くのステップを実行します.
    これを減らすために、クライアントにトークンを発行し、トークンのみを表示してログインします.

  • from django.http import HttpRespose, JsonResponse
  • jsonに似ていて、クライアントが受け取ったjava形式のjsonを受け取ったので、サーバもjava形式で送信しなければなりません.その時に必要なモジュールです.
    - django.views import View
    viewでview内蔵関数を呼び出すのは理解できないので、他の記事を参考にしました.
  • 簡単にPOSTを実現しただけですが、URLに接続されています.これらはすべてビューにありますが、POSTが実現されると「DEF POST」です.これらはdjangoで実現されたVIEWを継承して書き込まれています.書くたびに感謝すればいい
  • - from django.db.models, from django.db.cres import validation
  • のログインと会員加入を実現するための追加の書き込み.
  • - from .models import Userinfo
  • を使用して、
  • モデルとともに作成されたUserInforをロードします.