From d5bf12cf29423ac8f1f993e7870ad7a39acb4915 Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Sat, 8 Apr 2023 13:10:28 +0300 Subject: [PATCH 1/2] Created License app --- FOSSDB_web/apps/license/__init__.py | 0 FOSSDB_web/apps/license/admin.py | 3 +++ FOSSDB_web/apps/license/apps.py | 6 ++++++ FOSSDB_web/apps/license/migrations/__init__.py | 0 FOSSDB_web/apps/license/models.py | 3 +++ FOSSDB_web/apps/license/tests.py | 3 +++ FOSSDB_web/apps/license/views.py | 3 +++ 7 files changed, 18 insertions(+) create mode 100644 FOSSDB_web/apps/license/__init__.py create mode 100644 FOSSDB_web/apps/license/admin.py create mode 100644 FOSSDB_web/apps/license/apps.py create mode 100644 FOSSDB_web/apps/license/migrations/__init__.py create mode 100644 FOSSDB_web/apps/license/models.py create mode 100644 FOSSDB_web/apps/license/tests.py create mode 100644 FOSSDB_web/apps/license/views.py diff --git a/FOSSDB_web/apps/license/__init__.py b/FOSSDB_web/apps/license/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/FOSSDB_web/apps/license/admin.py b/FOSSDB_web/apps/license/admin.py new file mode 100644 index 0000000..8c38f3f --- /dev/null +++ b/FOSSDB_web/apps/license/admin.py @@ -0,0 +1,3 @@ +from django.contrib import admin + +# Register your models here. diff --git a/FOSSDB_web/apps/license/apps.py b/FOSSDB_web/apps/license/apps.py new file mode 100644 index 0000000..af50348 --- /dev/null +++ b/FOSSDB_web/apps/license/apps.py @@ -0,0 +1,6 @@ +from django.apps import AppConfig + + +class LicenseConfig(AppConfig): + default_auto_field = 'django.db.models.BigAutoField' + name = 'license' diff --git a/FOSSDB_web/apps/license/migrations/__init__.py b/FOSSDB_web/apps/license/migrations/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/FOSSDB_web/apps/license/models.py b/FOSSDB_web/apps/license/models.py new file mode 100644 index 0000000..71a8362 --- /dev/null +++ b/FOSSDB_web/apps/license/models.py @@ -0,0 +1,3 @@ +from django.db import models + +# Create your models here. diff --git a/FOSSDB_web/apps/license/tests.py b/FOSSDB_web/apps/license/tests.py new file mode 100644 index 0000000..7ce503c --- /dev/null +++ b/FOSSDB_web/apps/license/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/FOSSDB_web/apps/license/views.py b/FOSSDB_web/apps/license/views.py new file mode 100644 index 0000000..91ea44a --- /dev/null +++ b/FOSSDB_web/apps/license/views.py @@ -0,0 +1,3 @@ +from django.shortcuts import render + +# Create your views here. From a055cbe47659775fad268616b56ea787cd776026 Mon Sep 17 00:00:00 2001 From: Kristofers Solo Date: Sat, 8 Apr 2023 13:16:38 +0300 Subject: [PATCH 2/2] Moved License code to separate app --- FOSSDB_web/apps/fossdb/admin.py | 3 +-- FOSSDB_web/apps/fossdb/forms.py | 8 +------ ...2_delete_license_alter_project_licenses.py | 22 +++++++++++++++++ FOSSDB_web/apps/fossdb/models.py | 10 +------- FOSSDB_web/apps/license/admin.py | 4 +++- FOSSDB_web/apps/license/forms.py | 9 +++++++ .../apps/license/migrations/0001_initial.py | 24 +++++++++++++++++++ FOSSDB_web/apps/license/models.py | 10 +++++++- FOSSDB_web/apps/license/views.py | 3 --- FOSSDB_web/settings.py | 1 + 10 files changed, 71 insertions(+), 23 deletions(-) create mode 100644 FOSSDB_web/apps/fossdb/migrations/0002_delete_license_alter_project_licenses.py create mode 100644 FOSSDB_web/apps/license/forms.py create mode 100644 FOSSDB_web/apps/license/migrations/0001_initial.py diff --git a/FOSSDB_web/apps/fossdb/admin.py b/FOSSDB_web/apps/fossdb/admin.py index 353a014..e377288 100644 --- a/FOSSDB_web/apps/fossdb/admin.py +++ b/FOSSDB_web/apps/fossdb/admin.py @@ -1,6 +1,6 @@ from django.contrib import admin -from .models import (HostingPlatform, License, ProgrammingLanguage, Project, +from .models import (HostingPlatform, ProgrammingLanguage, Project, ProjectHostingPlatform, ProjectProgrammingLanguage) @@ -25,7 +25,6 @@ class ProjectAdmin(admin.ModelAdmin): return " | ".join([i.hosting_platform.hosting_platform for i in object.projecthostingplatform_set.all()]) -admin.site.register(License) admin.site.register(ProgrammingLanguage) admin.site.register(HostingPlatform) admin.site.register(Project, ProjectAdmin) diff --git a/FOSSDB_web/apps/fossdb/forms.py b/FOSSDB_web/apps/fossdb/forms.py index 9da02f4..0333317 100644 --- a/FOSSDB_web/apps/fossdb/forms.py +++ b/FOSSDB_web/apps/fossdb/forms.py @@ -1,6 +1,6 @@ from django import forms -from .models import (HostingPlatform, License, ProgrammingLanguage, Project, +from .models import (HostingPlatform, ProgrammingLanguage, Project, ProjectHostingPlatform, ProjectProgrammingLanguage) @@ -23,12 +23,6 @@ class ProjectForm(forms.ModelForm): } -class LicenseForm(forms.ModelForm): - class Meta: - model = License - fields = ["short_name", "full_name", "url", "description"] - - class ProgrammingLanguageForm(forms.ModelForm): percentage = forms.IntegerField(min_value=0, max_value=100) diff --git a/FOSSDB_web/apps/fossdb/migrations/0002_delete_license_alter_project_licenses.py b/FOSSDB_web/apps/fossdb/migrations/0002_delete_license_alter_project_licenses.py new file mode 100644 index 0000000..0244548 --- /dev/null +++ b/FOSSDB_web/apps/fossdb/migrations/0002_delete_license_alter_project_licenses.py @@ -0,0 +1,22 @@ +# Generated by Django 4.1.7 on 2023-04-08 10:14 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('license', '0001_initial'), + ('fossdb', '0001_initial'), + ] + + operations = [ + migrations.DeleteModel( + name='License', + ), + migrations.AlterField( + model_name='project', + name='licenses', + field=models.ManyToManyField(to='license.license'), + ), + ] diff --git a/FOSSDB_web/apps/fossdb/models.py b/FOSSDB_web/apps/fossdb/models.py index d21d940..d25faa4 100644 --- a/FOSSDB_web/apps/fossdb/models.py +++ b/FOSSDB_web/apps/fossdb/models.py @@ -3,15 +3,7 @@ import uuid from django.contrib.auth.models import User from django.db import models - -class License(models.Model): - short_name = models.CharField(max_length=50) - full_name = models.CharField(max_length=100, null=True, blank=True) - url = models.URLField(null=True, blank=True) - description = models.TextField(null=True, blank=True) - - def __str__(self): - return self.short_name +from license.models import License class ProgrammingLanguage(models.Model): diff --git a/FOSSDB_web/apps/license/admin.py b/FOSSDB_web/apps/license/admin.py index 8c38f3f..9908df0 100644 --- a/FOSSDB_web/apps/license/admin.py +++ b/FOSSDB_web/apps/license/admin.py @@ -1,3 +1,5 @@ from django.contrib import admin -# Register your models here. +from .models import License + +admin.site.register(License) diff --git a/FOSSDB_web/apps/license/forms.py b/FOSSDB_web/apps/license/forms.py new file mode 100644 index 0000000..0c180da --- /dev/null +++ b/FOSSDB_web/apps/license/forms.py @@ -0,0 +1,9 @@ +from django import forms + +from .models import License + + +class LicenseForm(forms.ModelForm): + class Meta: + model = License + fields = ["short_name", "full_name", "url", "description"] diff --git a/FOSSDB_web/apps/license/migrations/0001_initial.py b/FOSSDB_web/apps/license/migrations/0001_initial.py new file mode 100644 index 0000000..26024b3 --- /dev/null +++ b/FOSSDB_web/apps/license/migrations/0001_initial.py @@ -0,0 +1,24 @@ +# Generated by Django 4.1.7 on 2023-04-08 10:14 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + ] + + operations = [ + migrations.CreateModel( + name='License', + fields=[ + ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), + ('short_name', models.CharField(max_length=50)), + ('full_name', models.CharField(blank=True, max_length=100, null=True)), + ('url', models.URLField(blank=True, null=True)), + ('description', models.TextField(blank=True, null=True)), + ], + ), + ] diff --git a/FOSSDB_web/apps/license/models.py b/FOSSDB_web/apps/license/models.py index 71a8362..172f707 100644 --- a/FOSSDB_web/apps/license/models.py +++ b/FOSSDB_web/apps/license/models.py @@ -1,3 +1,11 @@ from django.db import models -# Create your models here. + +class License(models.Model): + short_name = models.CharField(max_length=50) + full_name = models.CharField(max_length=100, null=True, blank=True) + url = models.URLField(null=True, blank=True) + description = models.TextField(null=True, blank=True) + + def __str__(self): + return self.short_name diff --git a/FOSSDB_web/apps/license/views.py b/FOSSDB_web/apps/license/views.py index 91ea44a..e69de29 100644 --- a/FOSSDB_web/apps/license/views.py +++ b/FOSSDB_web/apps/license/views.py @@ -1,3 +0,0 @@ -from django.shortcuts import render - -# Create your views here. diff --git a/FOSSDB_web/settings.py b/FOSSDB_web/settings.py index e4d3655..5a28844 100644 --- a/FOSSDB_web/settings.py +++ b/FOSSDB_web/settings.py @@ -37,6 +37,7 @@ ALLOWED_HOSTS = config["ALLOWED_HOSTS"] INSTALLED_APPS = [ "fossdb", + "license", "account", "django.contrib.admin", "django.contrib.auth",