67 DRF réponse apiview pour le rendu du module d'analyse syntaxique demande module d'ordonnancement de module

1.Django Examen de la configuration

1. Répartition de l'itinéraire comprend

 

 

 Enregistrement de 2.app: lorsque l'application n'utilise pas les opérations liées à la base de données, ne peuvent être enregistrées; DRF doit être enregistré avant l'emploi, bref enregistré à ajouter: Inscription chargera application package suivant __init__ fichier

 

 

 3. Configuration Base de données: fichier des paramètres de configuration

 

 configuration de base de données 3.orm

champs communs

 

 backstage similaires exposer la réception et fichiers ressource statique statique d'allocation des ressources

 

 

 

Accès avant

 

 

 cycle de vie de la demande 2.APIView

 

3. Le module d'analyse de requête

1. DRF règles de certification csrf désactivé à une procédure d'expédition

 

2. Personnalisez la demande de configuration format de données DRF

3. rétrocompatible

 

 

 

 

 

4. Réponse module de rendu

les données de rendu en deux formats: rendu des données et le rendu du navigateur (fichier paramètre pour restframework View)

 

 

 

 Explication: Comment le navigateur puis choisissez le navigateur ne peut rendre les données de la manière, obtenir des données au format JSON

Le module d'ordonnancement

1. La mise en place du module de séquence

 

 

2. Utilisez

##### models.py 
de django.db importation des modèles
 de django.conf importation de
 classe Utilisateur (models.Model): 
    SEX_CHOICES = ((0, ' ' ), (1, ' ' )) 
    nom = modèles .CharField (longueur_max = 64, verbose_name = ' 姓名' ) 
    password = models.CharField (longueur_max = 64 ) 
    age = models.IntegerField () 
    hauteur = models.DecimalField (MAX_DIGITS = 5, decimal_places = 2, par défaut = 0) 
    sexeModels.IntegerField = (= SEX_CHOICES choix, par défaut = 0)
     # Sexe = models.CharField (choix = [( '0', 'M'), ( '1', 'F')]) 
    icône models.ImageField = ( = l'upload_to « icône » , par défaut = « icône / Default.png » ) 

    # champ sérialisation personnalisé à l'avant des 
    # avantages: 1) les données de base de données d' origine peuvent être champ formatées 2) peut être caché en dehors de la base de données de noms de champ d' origine 3 ) peut être directement connecté à la table d'opération 
    @property   # tous les champs sont prises 
    DEF genre (auto):
         retour self.get_sex_display () 

    @property 
    DEF IMG (Self):
         retour settings.BASE_URL settings.MEDIA_URL + + self.icon.name 

    DEF __str__ (auto-):
         retour self.name 
`` ` 

#### serializers.py séquence de base 
de rest_framework importation sérialiseurs
 de . importation Modèles
 classe UserModelSerializer (serializers.ModelSerializer):
     classe Meta:
         # La séquence est secondaire à cette classe modèle de 
        modèle = models.User 
        # ensemble de séquences qui sont impliquées dans le domaine désérialisation 
        # connectable: champ peut être sélectivement retourné à l'avant (bouchons sont fabriqués dans la classe modèle) 
        # champs = [ « name », « âge '' height '' Sex '' icône] Les 
        champs = [ ' nom ' , ' âge ' ,' Hauteur ' , ' sexe ' , ' img ' ] 
`` ` 

#### views.py 
de rest_framework.views importer APIView
 de rest_framework.response importation Réponse 

de . importation des modèles, serializers 

classe UserAPIView (APIView):
     def get (auto, demande, * args, ** kwargs): 
        pk = kwargs.get ( ' pk ' )
         si pk:   # 单查
            #1) interagir avec la base de données pour obtenir la ressource ou des ressources obj OBJS 
            # 2) en une séquence de données peuvent être restituées aux données JSON avant 
            # 3) est renvoyé aux données de réception json 
            obj = models.User.objects.get (PK = PK) 
            sérialiseur = sérialiseurs .UserModelSerializer (obj, NOMBREUX = False)
             renvoie la réponse (serializer.data) 

        else :   # cluster check 
            # 1) interagissent avec la base de données pour obtenir la ressource ou des ressources obj OBJS 
            # 2) peuvent être retournés à la séquence de données en données de premier plan JSON 
            # 3) données JSON est retournée à l'avant 
            QuerySet = models.User.objects.all ()
             # si les données sont une pluralité de fonctionnement beaucoup 
            sérialiseur = serializers.UserModelSerializer (QuerySet, beaucoup = Vrai)
             Retour de la réponse (serializer.data) 

    DEF POST (auto, demande, args *, ** kwargs):
         # monocytogenes 
        # 1) pour obtenir la demande de réception de données de la demande présentée par le 
        # 2) pour convertir les données dans un objet modèle, et complète opération de stockage de base de données 
        # 3) le stockage réussi des objets à retourner dans la réception des données JSON colonne (données non comme la demande et la réponse: Envoyer une demande nécessite un mot de passe, la réponse de mot de passe ne doit pas montrer) 
        # 4) les données renvoyées au JSON avant

 

Je suppose que tu aimes

Origine www.cnblogs.com/bigbox/p/12602602.html
conseillé
Classement