91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Django的REST框架Flask如何構建API

發布時間:2024-11-14 16:02:02 來源:億速云 閱讀:79 作者:小樊 欄目:編程語言

Django REST框架(DRF)和Flask是兩個不同的Python Web框架,它們都可以用來構建API。這里我將分別介紹如何使用Django REST框架和Flask來構建API。

  1. 使用Django REST框架構建API:

首先,確保已經安裝了Django REST框架。如果沒有安裝,可以使用以下命令安裝:

pip install djangorestframework

接下來,創建一個新的Django項目和應用:

django-admin startproject myproject
cd myproject
django-admin startapp myapp

myproject/settings.py中,將rest_framework添加到INSTALLED_APPS列表中:

INSTALLED_APPS = [
    # ...
    'rest_framework',
    'myapp',
]

現在,我們可以在myapp中創建一個簡單的模型。例如,創建一個Book模型:

# myapp/models.py
from django.db import models

class Book(models.Model):
    title = models.CharField(max_length=100)
    author = models.CharField(max_length=100)

    def __str__(self):
        return self.title

接下來,創建一個序列化器來將模型實例轉換為JSON格式:

# myapp/serializers.py
from rest_framework import serializers
from .models import Book

class BookSerializer(serializers.ModelSerializer):
    class Meta:
        model = Book
        fields = ['id', 'title', 'author']

然后,創建一個視圖來處理API請求:

# myapp/views.py
from rest_framework import viewsets
from .models import Book
from .serializers import BookSerializer

class BookViewSet(viewsets.ModelViewSet):
    queryset = Book.objects.all()
    serializer_class = BookSerializer

最后,在myproject/urls.py中配置路由:

from django.urls import path, include
from rest_framework.routers import DefaultRouter
from myapp.views import BookViewSet

router = DefaultRouter()
router.register(r'books', BookViewSet)

urlpatterns = [
    # ...
    path('', include(router.urls)),
]

現在,你可以運行Django開發服務器并訪問API:

python manage.py runserver

訪問http://127.0.0.1:8000/books/,你將看到所有書籍的列表。

  1. 使用Flask構建API:

首先,確保已經安裝了Flask。如果沒有安裝,可以使用以下命令安裝:

pip install flask

接下來,創建一個新的Flask應用:

# app.py
from flask import Flask, jsonify, request
from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///books.db'
db = SQLAlchemy(app)

class Book(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    title = db.Column(db.String(100), nullable=False)
    author = db.Column(db.String(100), nullable=False)

    def __repr__(self):
        return f'<Book {self.title}>'

db.create_all()

@app.route('/books', methods=['POST'])
def create_book():
    data = request.get_json()
    new_book = Book(title=data['title'], author=data['author'])
    db.session.add(new_book)
    db.session.commit()
    return jsonify(new_book.__dict__), 201

@app.route('/books', methods=['GET'])
def get_books():
    books = Book.query.all()
    return jsonify([book.__dict__ for book in books])

if __name__ == '__main__':
    app.run(debug=True)

現在,你可以運行Flask應用并訪問API:

python app.py

訪問http://127.0.0.1:5000/books/,你將看到所有書籍的列表。使用POST請求向http://127.0.0.1:5000/books/發送JSON數據,可以創建新的書籍。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

井研县| 哈巴河县| 团风县| 顺平县| 临城县| 芦溪县| 铁岭县| 怀柔区| 太白县| 丹江口市| 金湖县| 富锦市| 高雄市| 连平县| 通化县| 天长市| 西宁市| 嵊泗县| 高台县| 乐平市| 泸溪县| 大荔县| 镇赉县| 桐梓县| 平罗县| 石景山区| 彩票| 原平市| 锡林郭勒盟| 蓬安县| 于田县| 屏边| 乌鲁木齐县| 宁蒗| 美姑县| 庆云县| 洛阳市| 河东区| 榕江县| 普陀区| 千阳县|