mirror of
https://github.com/boostorg/website-v2.git
synced 2026-02-27 17:42:08 +00:00
Merge pull request #149 from CPPAlliance/upload-authors-maintainers
Move `maintainers` from `Library` to `LibraryVersion`
This commit is contained in:
26
libraries/migrations/0005_auto_20230303_2100.py
Normal file
26
libraries/migrations/0005_auto_20230303_2100.py
Normal 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
|
||||
),
|
||||
),
|
||||
]
|
||||
@@ -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})"
|
||||
|
||||
@@ -2,6 +2,7 @@ import structlog
|
||||
|
||||
from dateutil.parser import ParserError, parse
|
||||
|
||||
|
||||
logger = structlog.get_logger()
|
||||
|
||||
|
||||
|
||||
@@ -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]" />
|
||||
|
||||
10
templates/users/_library_version.html
Normal file
10
templates/users/_library_version.html
Normal 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>
|
||||
@@ -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 %}
|
||||
|
||||
@@ -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):
|
||||
|
||||
Reference in New Issue
Block a user