Django workflow
Η καθιερωμένη ροή για κάθε αλλαγή στο Django project.
Δημιουργία μιας νέας εφαρμογής
Εκτέλεση από τη ρίζα του έργου:
cd src
uv run python manage.py startapp app_name
cd ..Παράδειγμα:
cd src
uv run python manage.py startapp organizations
cd ..Στη συνέχεια εγγραφείτε την εφαρμογή σε:
src/bubllio_crm/settings.pyΠαράδειγμα:
INSTALLED_APPS = [
...
"rest_framework",
"organizations",
]Τυπική ροή χαρακτηριστικών API
Για έναν κανονικό πόρο REST, η ροή είναι:
model
-> migration
-> admin
-> serializer
-> view
-> app urls
-> project urls
-> check
-> test manually or with automated testsΑρχεία που αγγίζουν
models.py
Καθορίζει τη δομή της βάσης δεδομένων.
Παράδειγμα:
class Organization(models.Model):
name = models.CharField(max_length=255)admin.py
Καταγράφει το μοντέλο στο Django admin.
Παράδειγμα:
@admin.register(Organization)
class OrganizationAdmin(admin.ModelAdmin):
list_display = ("id", "name", "slug", "created_at", "updated_at")serializers.py
Καθορίζει πώς το μοντέλο γίνεται JSON και πώς επικυρώνεται το εισερχόμενο JSON.
Παράδειγμα:
class OrganizationSerializer(serializers.ModelSerializer):
class Meta:
model = Organization
fields = ["id", "name", "slug", "created_at", "updated_at"]views.py
Καθορίζει τη συμπεριφορά API.
Παράδειγμα:
class OrganizationListCreateAPIView(APIView):
def get(self, request):
...
def post(self, request):
...urls.py
Συνδέει μια διαδρομή URL σε μια προβολή.
Παράδειγμα:
urlpatterns = [
path("", OrganizationListCreateAPIView.as_view(), name="organization-list"),
]Συμβολή σε Αυτοματισμούς
Διαβάστε τρέχουσα συμπεριφορά automation πριν κάνετε αλλαγές. Το workflow roadmap καταγράφει μελλοντική κατεύθυνση· τα μπλοκ του και οι έννοιες API δεν έχουν υλοποιηθεί ακόμα.
Για την επόμενη αλλαγή, χρησιμοποιήστε τις υπάρχουσες Django services και tenant permissions. Μην παρουσιάζετε ένα trigger ως υποστηριζόμενο αν δεν συνδέεται με πραγματικό event. Οι δοκιμές πρέπει να καλύπτουν την πραγματική ροή του event, την επιλογή κανόνων, τους ανενεργούς κανόνες, την αποτυχία action και το καταγεγραμμένο αποτέλεσμα — όχι μόνο μια επιτυχημένη χειροκίνητη δοκιμή. Οι υπάρχουσες δοκιμές automations καλύπτουν κυρίως το API authorization και το tenant isolation.
Ενημέρωση Docs αρχιτεκτονική, το walkthrough, και Postman παραδείγματα μαζί όταν αλλάζει συμπεριφορά. Ξεχωριστή συμπεριφορά εργασίας από προγραμματισμένες βελτιώσεις, συμπεριλαμβανομένης της μεταφοράς email και των παρενεργειών του τελικού σημείου δοκιμής.
Επαλήθευση
Εκτέλεση:
uv run python src/manage.py check
uv run python src/manage.py makemigrations --check --dry-run
uv run python src/manage.py test bubllio_crm organizations access onboarding companies contacts automationsΧρησιμοποιήστε makemigrations --check --dry-run όταν θέλετε να επιβεβαιώσετε ότι δεν υπάρχουν αλλαγές μοντέλου που λείπουν migrations.
Οι σαφείς ετικέτες εφαρμογών είναι σημαντικές με τη διάταξη src/ του αποθετηρίου. Ένα γυμνό manage.py test ανακαλύπτει επί του παρόντος μηδέν δοκιμές.
