[PYTHON] Développement d'applications à l'aide de SQLite avec Django (PTVS)

Qu'est-ce que SQLite

Je vais vous expliquer comment utiliser SQLite. SQLite est la même base de données relationnelle que MySQL, mais elle peut être exécutée en tant qu'application autonome au lieu de fonctionner en tant que serveur. Référence SQL est le paramètre par défaut dans Django!

Développement d'applications avec Django

Je voudrais porter l'application précédente sur SQLite. Si vous ne connaissez pas PTVS, veuillez vous référer à ici pour créer un projet!

Code source complet

C'est la tâche principale!

views.py


# -*- coding: utf-8 -*-
"""
Definition of views.
"""

from django.shortcuts import render
from django.template.loader import render_to_string
from django.http import HttpResponse
from django.http import HttpRequest
from django.template import RequestContext
from datetime import datetime
from app.models import Check_list

def list_tasks(request):
    entities = Check_list.objects.all()
    html = render_to_string('app/test.html', {'entities':entities})     
    return HttpResponse(html)


def add_task(request):     
    name = request.GET['name']     
    category = request.GET['category']
    Check_list.objects.update_or_create(name=name,category=category)
    entities = Check_list.objects.all()   
    html = render_to_string('app/test.html', {'entities':entities})     
    return HttpResponse(html)


def update_task(request):   
    name = request.GET['name']     
    category = request.GET['category']
    Check_list.objects.filter(name=name,category=category).delete()           
    entities = Check_list.objects.all()
    html = render_to_string('app/test.html', {'entities':entities})     
    return HttpResponse(html)

La partie qui appelle la fonction par URL

urls.py


"""
Definition of urls for DjangoWebProject4.
"""

from datetime import datetime
from django.conf.urls import url
import django.contrib.auth.views

import app.forms
import app.views

# Uncomment the next lines to enable the admin:
from django.conf.urls import include
#admin
from django.contrib import admin
admin.autodiscover()

urlpatterns = [
    # Examples:
    #admin
    url(r'^admin/', include(admin.site.urls)),
    url(r'^$',app.views.list_tasks),
    url(r'^list_tasks$',app.views.list_tasks),
    url(r'^add_task$', app.views.add_task),
    url(r'^update_task$', app.views.update_task)
]


Paramètres de la base de données Ici, les colonnes Nom et Catégorie sont définies dans une table appelée Liste de contrôle.

models.py


"""
Definition of models.
"""

from django.db import models

# Create your models here.
class Check_list(models.Model):
    name = models.CharField('Name', max_length=255)
    category = models.CharField('Category', max_length=255, blank=True)

Affichage de l'écran d'administration Si vous ne faites pas ** list_display ** ici, ce sera dans la partie base de données de Django La liste de contrôle ne s'affiche pas même si j'y accède

admin.py


from django.contrib import admin
from app.models import Check_list


class Check_listAdmin(admin.ModelAdmin):
    list_display = ('id', 'name', 'category')
    list_display_links = ('id', 'name',)
admin.site.register(Check_list, Check_listAdmin)

HTML ordinaire avec des tableaux

test.html


<!DOCTYPE html>
<html>
    <head>
        <title></title>
    </head>     
    <body>
        <h2>My Tasks</h2> <br>     
        <table border="1">
            <tr>
                <td>Name</td>
                <td>Category</td>
                <td>Check</td>
            </tr>     
            {% for entity in entities %}     
                <form action="update_task" method="GET">
                    <tr>
                        <td>{{entity.name}} <input type="hidden" name='name' value="{{entity.name}}"></td>     
                        <td>{{entity.category}} <input type="hidden" name='category' value="{{entity.category}}"></td>   
                        <td><input type="submit" value="Effacer"></td> 
                    </tr>     
                </form>     
            {% endfor %}     
        </table>     
        <br>     
        <hr>    
        <table border="1">
            <form action="add_task" method="GET">
                <tr>
                    <td>Name:</td
                    ><td><input type="text" name="name"></input></td>
                </tr>     
                <tr>
                    <td>Category:</td>
                    <td><input type="text" name="category"></input></td>
                </tr>     
                <tr>
                    <td><input type="submit" value="add task"></input></td>
                </tr>     
            </form>     
        </table>     
    </body>     
</html>

Réglage

Faites un clic droit sur le projet 【Python】▶︎【Django Create Superuser】 Pour sélectionner Cela vous permet de créer un super utilisateur et de vous connecter sur l'écran d'administration de Django!

Lorsque j'entre le mot de passe lors de sa création, il semble qu'une erreur se soit produite, mais cela signifie simplement que je vais entrer à nouveau le mot de passe, veuillez donc créer un super utilisateur

k1.png

Ensuite, pour refléter les paramètres de la base de données 【Python】▶︎【Django Make Migrations】 【Python】▶︎【Django Make Migrate】 Exécutez et réfléchissez chacun! De plus, si vous ajoutez ou modifiez une base de données Si vous ne l'exécutez pas de la même manière, il ne sera pas reflété!

k2.png

Courir

** RUN ** lance une application qui peut être supprimée et ajoutée Vous pouvez également accéder à la base de données Django par ** / admin ** et afficher le contenu de la table dans l'interface graphique! 1.png

Déployer

Sélectionnez [Publier] - [Web Apps] et déployez sur Azure de la même manière que ici. Après le déploiement ** [App Service] ▶ ️ [Présentation] ▶ ️ [URL] ** Vous pouvez confirmer que l'application précédente fonctionne en ouvrant à partir de

** * Vous pouvez utiliser SQL sans avoir à vous soucier du stockage de données SQL! ** ** 2.png

À la fin

J'ai été surpris que SQLite puisse être utilisé tel quel même s'il est téléchargé sur Azure! Cependant, j'ai essayé MySQL, mais cela n'a pas fonctionné après tout, donc je veux faire quelque chose à ce sujet! S'il vous plaît laissez-moi savoir si vous le connaissez! !!

Recommended Posts

Développement d'applications à l'aide de SQLite avec Django (PTVS)
Développement d'une application WEB avec Django [Django startup]
Développement d'une application WEB avec Django [Ajout d'application]
Développement d'une application WEB avec Django [Définition de modèle]
Développement d'une application WEB avec Django [Paramètre initial]
Développement d'une application WEB avec Django [Traitement des requêtes]
Développement d'une application WEB avec Django [modèle supplémentaire]
Développement d'une application WEB avec Django [Création de l'écran d'administration]
Développement d'applications Web avec Flask
Créer une application Web avec Django
Développement piloté par les tests avec Django Partie 3
Développement piloté par les tests avec Django Partie 6
Mesurer la couverture des applications Django avec Coverage.py
Déployer l'application Django avec Docker
Développement piloté par les tests avec Django Partie 2
Application de publication sur Twitter réalisée avec Django
Créer une application Web avec Django
Développement piloté par les tests avec Django Partie 1
Développement d'applications avec Docker + Python + Flask
Développement d'applications à l'aide d'Azure Machine Learning
Développement piloté par les tests avec Django Partie 5
Développement d'applications WEB à l'aide de django-Construction d'environnement de développement-
J'ai fait une application WEB avec Django
Jusqu'à la création de l'application Django par terminal (environnement de développement)
[Python] Créer un environnement de développement Django avec Docker
Django avec Python Tools 2.2 pour Visual Studio (PTVS 2.2)
Créer un environnement de développement Django à l'aide de Doker Toolbox
Défis MySQL du stockage externe Azure avec Django (PTVS)
CRUD avec Django
Créez une application Hello World avec un seul fichier avec django
Premier développement Django
J'ai essayé d'utiliser la base de données (sqlite3) avec kivy
Procédure de création d'une application avec Django avec Pycharm ~ Préparation ~
Créer un environnement de développement Django à l'aide de pyenv-virtualenv sur Mac
Précautions lors de l'utilisation de sqlite3 de macOS Sierra (10.12) avec le multitraitement
(Python) Essayez de développer une application Web en utilisant Django
[Mac OS] Utilisez Kivy avec PyCharm! [Développement d'applications Python]
Application Web réalisée avec Python3.4 + Django (Construction de l'environnement Part.1)
Créer un environnement de développement d'applications d'apprentissage automatique avec Python
Authentification unique à l'application Django avec AWS SSO
Un mémo sur la création d'une application Django (Python) avec Docker
Tech-Circle Commençons le développement d'applications à l'aide de l'apprentissage automatique (auto-apprentissage)
Déployer l'application Django créée avec PTVS sur Azure
Créez un environnement de développement avec Poetry Django Docker Pycharm
Model.objects.extra à prendre en compte avant d'utiliser du SQL brut avec Django
Articles permettant le développement de systèmes avec Django (Python) _Introduction
Faire une application utilisant tkinter un fichier exécutable avec cx_freeze
Configurer un environnement de développement Django en utilisant homebrew sur MacOSX Mavericks (10.9)
Authentifier Google avec Django
Django 1.11 a démarré avec Python3.6
Télécharger des fichiers avec Django
Erreur de version Django2.2 SQLite3
Sortie PDF avec Django
Sortie Markdown avec Django
Utiliser Gentelella avec Django
Twitter OAuth avec Django
Premiers pas avec Django 1
Envoyer des e-mails avec Django
Téléchargement de fichiers avec django
Essayez d'utiliser Django templates.html