Strømlin din udviklingsproces med kraften fra disse to komplementære rammer.

I dagens verden er mobilapps en nødvendighed for enhver virksomhed. Flutter og Django er to populære rammer, der bruges til appudvikling. Flutter er et open source UI-værktøjssæt til at bygge smukke, native kompilerede applikationer til mobil, web og desktop fra en enkelt kodebase.

Django er et Python-webframework på højt niveau, der muliggør hurtig udvikling af sikre og vedligeholdelige hjemmesider og webapplikationer.

Udforsk betydningen af ​​Django og Flutter i appudvikling

Django er baseret på Model-View-Controller (MVC) arkitektoniske mønster og følger Don't Repeat Yourself (DRY) princippet, som sikrer kodegenanvendelighed og reducerer redundans.

Du kan bruge Flutter 3.7, udgivet i februar 2023, at bygge smukke, native-kompilerede applikationer til mobil, web og desktop fra en enkelt kodebase. Flutter bruger programmeringssproget Dart, som er hurtigt, moderne og optimeret til mobiludvikling.

At kombinere de kraftfulde funktioner i Django og Flutter i app-udvikling kan resultere i effektiv udviklingsprocesser, reduceret redundans og optimal brugeroplevelse på grund af rammernes komplementære styrker.

instagram viewer

Begrænsningerne ved at integrere Django med Flutter

Begrænsninger ved at integrere Django og Flutter kan omfatte kompatibilitetsproblemer, øget kompleksitet i udviklingen og en potentiel læringskurve for udviklere, der ikke er bekendt med begge rammer.

Selvom Django og Flutter har et stort og aktivt fællesskab, er integrationen mellem dem stadig i de tidlige stadier, så udviklere kan stå over for udfordringer med at finde løsninger på specifikke problemer.

Sådan integreres Django med Flutter

Det første afsnit guider dig til opsætning af dit Django-projekt og det andet i opsætning af flutter.

1. Konfigurer dit Django-projekt

Du kan opbygge en REST API ved hjælp af Django REST frameworket. Start med at oprette et virtuelt miljø og installere Django:

pip installer django

Installer derefter Django REST-rammeværket, et kraftfuldt og fleksibelt værktøjssæt til at bygge API'er:

pip installer django-rest-framework

Pip-programmet skulle producere output, der fortæller dig, at installationen er lykkedes:

Afslut ved at oprette et nyt projekt ved hjælp af Django-kommandolinjegrænsefladen (CLI):

django-admin startproject myproject

2. Opret en Django-app

Begynd med at oprette en ny app i dit projekt ved hjælp af Django CLI:

django-admin startapp api

Dernæst skal du definere Django-modellerne i din models.py fil for at repræsentere dataene i din app. Migrer derefter dine modeller til databasen med følgende kommando:

python manage.py makemigrationer
python manage.py migrere

Fortsæt ved at oprette Django-visninger i views.py til at håndtere HTTP-anmodninger og -svar. Sørg for at tilføje følgende i dine importerklæringer:

fra rest_framework.decorators importere api_view, permission_classes

Det er, hvis du bruger funktionsvisninger og ikke klassevisninger. For klassevisninger:

fra rest_framework.views importere APIView

For at konvertere komplekse datatyper til JSON eller XML, kan du definere serializers i Django. De serialiserer data i et format, som du nemt kan overføre mellem forskellige systemer. Alternativt kan du bruge JsonResponse metode i return-sætningen til direkte at generere et JSON-svar.

fra django.http importere JsonResponse

Brug den derefter i en visning som vist nedenfor.

@api_view(['GET'])
@permission_classes((tilladelser. Tillad Enhver,))
defgetRoutes(anmodning):
ruter = [{
'Endpunkt': '/homeapi/',
'metode': 'FÅ',
'legeme': {'legeme': ""},
'beskrivelse': 'Returnering af data'
}]

view = APIView()
view.queryset = ruter
Vend tilbage JsonResponse (ruter, sikker=Falsk, status=200)

Definer dine url-mønstre i urls.py:

fra django.urls importere sti
fra. importere visninger

urlpatterns = [
sti('homeapigetroutes/', views.getRoutes),
sti('homeapi/',views.home_page),
sti('homeapi/login/', views.login_page),
sti('homeapi/csrf/', views.getcsrftoken),
sti('homeapi/submitform/', views.submit_form),
]

Dette er de webadresser, du vil bruge som slutpunkter i Flutter-applikationen. Hvis du er hosting af din Django-app på PythonAnywhere, genindlæs blot din webapp for at aktivere API'erne.

3. Opret et Flutter-projekt

Flutter CLI er brugervenlig og tilbyder en bred vifte af kommandoer til effektiv projektstyring.

Installer Flutter hvis du ikke allerede har det installeret. For at oprette et nyt projekt skal du køre denne terminalkommando:

flagre opret mit_projekt

Tilføj afhængigheder for dio og dio cookie manager-pakken til din pubspec.yaml fil:

dio:^5.0.0dio_cookie_manager:^2.0.0

Dio er en pakke, der giver en HTTP-klient til at lave API-anmodninger. dio_cookie_manager er en ekstra pakke, der arbejder med dio til at administrere cookies til disse anmodninger.

Opret en api.dart fil for at tildele variabler til Django hvile-endepunkter.

konst loginUrl = ' https://test.pythonanywhere.com/api/homeapi/login/';
konst csrfurl = ' https://test.pythonanywhere.com/api/homeapi/csrf/';
konst dataUrl = ' https://test.pythonanywhere.com/api/homeapi/';
konst noteUrl = ' https://test.pythonanywhere.com/api/homeapi/submitform/';

Du kan derefter bruge dine slutpunkter ved at udføre POST-, GET-, PUT- eller DELETE-anmodninger afhængigt af dine behov. Sørg for at importere din api.dart-fil.

Hvis du f.eks. ønsker at hente data fra et slutpunkt med navnet dataUrl:

var svar = vente dio.get (dataUrl);

For at vise data i din Flutter-app kan du bruge widgets og pakke dem ind med en Fremtid der henter dataene fra et slutpunkt. EN listetil widget er en af ​​de muligheder, du kunne overveje for at vise dataene. Kør din flutter-app i fejlretningstilstand ved at køre følgende kommando fra den mappe, hvor dit projekt er placeret.

flagrende løb

Flutter vil informere dig om, at den er startet i fejlretningstilstand:

Du kan derefter overvåge anmodninger til API'et i dine Django-serverlogfiler.

Fremtiden for Django og Flutter-integration i appudvikling

Integrering af Django og Flutter giver mange fordele for app-udvikling, herunder hurtigere udvikling, kodegenanvendelighed, bedre ydeevne og forbedret brugeroplevelse.

Efterhånden som integrationen mellem Django og Flutter fortsætter med at udvikle sig, kan vi forvente at se mere avanceret funktioner og bedre fællesskabssupport, hvilket gør det endnu nemmere for udviklere at skabe mobil i høj kvalitet apps.