Merge pull request #149 from CPPAlliance/upload-authors-maintainers

Move `maintainers` from `Library` to `LibraryVersion`
This commit is contained in:
Lacey Williams Henschel
2023-03-14 10:01:45 -07:00
committed by GitHub
7 changed files with 42 additions and 5 deletions

View File

@@ -0,0 +1,26 @@
# Generated by Django 3.2.2 on 2023-03-03 21:00
from django.conf import settings
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
("libraries", "0004_auto_20230130_1830"),
]
operations = [
migrations.RemoveField(
model_name="library",
name="maintainers",
),
migrations.AddField(
model_name="libraryversion",
name="maintainers",
field=models.ManyToManyField(
related_name="maintainers", to=settings.AUTH_USER_MODEL
),
),
]

View File

@@ -54,7 +54,6 @@ class Library(models.Model):
categories = models.ManyToManyField(Category, related_name="libraries")
authors = models.ManyToManyField("users.User", related_name="authors")
maintainers = models.ManyToManyField("users.User", related_name="maintainers")
closed_prs_per_month = models.IntegerField(blank=True, null=True)
open_issues = models.IntegerField(blank=True, null=True)
@@ -105,6 +104,7 @@ class LibraryVersion(models.Model):
on_delete=models.SET_NULL,
null=True,
)
maintainers = models.ManyToManyField("users.User", related_name="maintainers")
def __str__(self):
return f"{self.library.name} ({self.version.name})"

View File

@@ -2,6 +2,7 @@ import structlog
from dateutil.parser import ParserError, parse
logger = structlog.get_logger()

View File

@@ -96,7 +96,7 @@
<div class="py-6">
<h3 class="mb-4 text-2xl">Maintainers</h3>
<div class="space-y-3">
{% for maintainer in object.maintainers.all %}
{% for maintainer in maintainers.all %}
<div>
{% if maintainer.image %}
<img src="{{ maintainer.image.url }}" alt="user" class="inline mr-2 rounded w-[47px]" />

View File

@@ -0,0 +1,10 @@
<div class="py-3">
<h4 class="text-orange capitalize">
<a href="{% url 'library-detail-by-version' version_slug=library_version.version.slug slug=library_version.library.slug %}">
{{ library_version.library.name }}
</a>
</h4>
<p class="pt-0">
{{ library_version.library.description }}
</p>
</div>

View File

@@ -135,8 +135,8 @@
<div class="py-6 border-b border-slate">
<h3 id="libraries-maintained" class="mb-3">Libraries Maintained</h3>
{% for library in maintained %}
{% include 'users/_library.html' with library=library %}
{% for library_version in maintained %}
{% include 'users/_library_version.html' with library_version=library_version %}
{% empty %}
<p>No Libraries Authored</p>
{% endfor %}

View File

@@ -126,7 +126,7 @@ class BaseUser(AbstractBaseUser, PermissionsMixin):
return full_name.strip()
def get_short_name(self):
"Returns the short name for the user."
"""Returns the short name for the user."""
return self.first_name
def email_user(self, subject, message, from_email=None, **kwargs):