溫馨提示×

django連接mysql數(shù)據(jù)庫并調用

小億
97
2024-01-05 18:07:53
欄目: 云計算

要在Django中連接MySQL數(shù)據(jù)庫并調用它,您需要執(zhí)行以下步驟:

  1. 安裝Django和MySQL客戶端庫:

    pip install django mysqlclient
    
  2. 在Django項目的settings.py文件中配置數(shù)據(jù)庫連接:

    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.mysql',
            'NAME': 'your_database_name',
            'USER': 'your_username',
            'PASSWORD': 'your_password',
            'HOST': 'your_host',
            'PORT': 'your_port',
        }
    }
    

    根據(jù)您的實際情況,將’your_database_name’、‘your_username’、‘your_password’、'your_host’和’your_port’替換為正確的值。

  3. 在Django項目的models.py文件中定義數(shù)據(jù)庫模型:

    from django.db import models
    
    class YourModel(models.Model):
        # 定義模型字段
        field1 = models.CharField(max_length=100)
        field2 = models.IntegerField()
        
        def __str__(self):
            return self.field1
    

    這是一個示例模型,您可以根據(jù)需要定義自己的模型字段。

  4. 執(zhí)行數(shù)據(jù)庫遷移以創(chuàng)建相應的表:

    python manage.py makemigrations
    python manage.py migrate
    
  5. 在Django項目的views.py文件中編寫視圖函數(shù)來調用數(shù)據(jù)庫:

    from django.shortcuts import render
    from .models import YourModel
    
    def your_view(request):
        # 查詢數(shù)據(jù)庫中的數(shù)據(jù)
        data = YourModel.objects.all()
        
        # 在模板中呈現(xiàn)數(shù)據(jù)
        return render(request, 'your_template.html', {'data': data})
    

    這是一個簡單的示例,您可以根據(jù)需要編寫自己的視圖函數(shù)。

  6. 創(chuàng)建一個模板your_template.html來呈現(xiàn)從數(shù)據(jù)庫中獲取的數(shù)據(jù):

    <h1>數(shù)據(jù)庫數(shù)據(jù):</h1>
    <ul>
        {% for item in data %}
            <li>{{ item }}</li>
        {% endfor %}
    </ul>
    

    這是一個簡單的示例模板,您可以根據(jù)需要自定義。

  7. 在Django項目的urls.py文件中配置URL路由:

    from django.urls import path
    from .views import your_view
    
    urlpatterns = [
        path('your-url/', your_view, name='your_view'),
    ]
    

    將’your-url/'替換為您想要的實際URL。

  8. 運行Django開發(fā)服務器:

    python manage.py runserver
    

現(xiàn)在,當您訪問配置的URL時,Django將連接到MySQL數(shù)據(jù)庫并調用相應的視圖函數(shù)來獲取數(shù)據(jù)并將其呈現(xiàn)在模板中。

0