summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorluxagraf <sng@luxagraf.net>2023-07-14 15:39:12 -0500
committerluxagraf <sng@luxagraf.net>2023-07-14 15:39:12 -0500
commitcadb4a09bfa9457171f03848dd054c987fda3322 (patch)
tree25d086fa8475de9b2c75d83cf3f3b5c850803718 /app
parent95a17d5e053eef07931ee3891c56215ba80fd557 (diff)
posts: added a filter by username for admin and in forms.py
Diffstat (limited to 'app')
-rw-r--r--app/posts/admin.py9
-rw-r--r--app/posts/forms.py11
-rw-r--r--app/posts/models.py17
3 files changed, 34 insertions, 3 deletions
diff --git a/app/posts/admin.py b/app/posts/admin.py
index a4e29b8..abe5a5c 100644
--- a/app/posts/admin.py
+++ b/app/posts/admin.py
@@ -3,6 +3,7 @@ from django.contrib import admin
from .models import Post, Note
from utils.widgets import AdminImageWidget, LGEntryForm
+from django.contrib.auth.models import User
from django.contrib.admin import SimpleListFilter
@@ -22,7 +23,13 @@ class PostAdmin(admin.ModelAdmin):
@admin.register(Note)
class NoteAdmin(admin.ModelAdmin):
- form = LGEntryForm
+ def get_form(self, request, obj=None, change=False, **kwargs):
+ form = super().get_form(request, obj=obj, change=change, **kwargs)
+ form.base_fields['post'].queryset = Post.objects.filter(
+ user=request.user
+ )
+ return form
+
list_display = ('date_created', 'title', 'post')
search_fields = ['title']
list_filter = ['date_created']
diff --git a/app/posts/forms.py b/app/posts/forms.py
new file mode 100644
index 0000000..89d350a
--- /dev/null
+++ b/app/posts/forms.py
@@ -0,0 +1,11 @@
+from django.forms import ModelForm
+
+class CreateForm(forms.ModelForm):
+
+ def __init__(self,*args,**kwargs):
+ user = kwargs.pop('user')
+ super(CreateForm,self).__init__(*args,**kwargs)
+ self.fields['post'].queryset = Post.objects.filter(user=user)
+
+ class Meta:
+ model = Note
diff --git a/app/posts/models.py b/app/posts/models.py
index 1f909f7..91420e1 100644
--- a/app/posts/models.py
+++ b/app/posts/models.py
@@ -1,7 +1,7 @@
from django.db import models
from django.utils.html import format_html, format_html_join
from django.utils import timezone
-from django.contrib.auth.models import User
+import settings
from products.models import ProductLink
@@ -41,7 +41,7 @@ class TemplateType(models.IntegerChoices):
class Post(models.Model):
# an entry in a feed
- user = models.ForeignKey(User, null=True, on_delete=models.SET_NULL)
+ user = models.ForeignKey(settings.AUTH_USER_MODEL, null=True, on_delete=models.SET_NULL)
title = models.CharField(max_length=512, blank=True, null=True)
body = models.TextField(blank=True, null=True)
url = models.CharField(max_length=512, blank=True, null=True)
@@ -142,4 +142,17 @@ with open(path) as f:
update_frequency = int(row[10]*30),
)
+
+
+user = User.objects.get(username="luxagraf")
+
+user
+<User: luxagraf>
+
+for post in Post.objects.all():
+ if post.author == "Scott Gilbertson":
+ post.user = user
+ post.save()
+
+
'''