Django community: RSS
This page, updated regularly, aggregates Django Q&A from the Django community.
-
How can I ovveride Django Admin page?
I've read many answers but I don't know what am I missing. I did the same steps as they are mentioned in Django Docs (https://docs.djangoproject.com/en/3.0/ref/contrib/admin/#admin-overriding-templates) but nothing happened. Here is my actual configuration : INSTALLED_APPS = [ 'app1.apps.App1Config', 'app2.apps.App2Config', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', ] MIDDLEWARE = [ 'django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', ] ROOT_URLCONF = 'rida.urls' TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [os.path.join(BASE_DIR, 'templates')],#i modified this line 'APP_DIRS': False, #True 'OPTIONS': { 'context_processors': [ 'django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages', ], 'loaders': [ 'django.template.loaders.filesystem.Loader', 'django.template.loaders.app_directories.Loader', ] } } ] the contents of admin.py file of app1 : from django.contrib import admin from django.conf.urls import url from app1.models import Modele admin.site.register(Modele) I want to override the template base.html, so I copied it from django\contrib\admin\templates\admin and put it in myproject\templates\admin\app1, then I made some changes on this file but nothing happened, so I have no idea why it doesn't work and what am I missing. thank you in advance. -
Can't Edit and Delete posts from my Django post_detail.html template
I've added Edit and Delete buttons to my post_details.html. This is to edit or delete a post added by the owner of the post. It's unfortunate that I'm always running into errors when I access the post_details.html page. Please I need your help... Below is the code snippets: models.py class PublishedManager(models.Manager): def get_queryset(self): return super(PublishedManager, self).get_queryset(). \ filter(status='published') class Post(models.Model): STATUS_CHOICES = ( ('draft', 'Draft'), ('published', 'Published'), ) title = models.CharField(max_length=250) slug = models.SlugField(max_length=250, unique_for_date='publish') author = models.ForeignKey(User, on_delete=models.CASCADE, related_name='blog_posts') header_image = models.ImageField(null=True, blank=True, upload_to='post') body = models.TextField() publish = models.DateTimeField(default=timezone.now) created = models.DateTimeField(auto_now_add=True) updated = models.DateTimeField(auto_now=True) status = models.CharField(max_length=10, choices=STATUS_CHOICES, default='published') objects = models.Manager() # Default manager published = PublishedManager() # Custom manager tags = TaggableManager() class Meta: ordering = ('-publish',) def __str__(self): return self.title def get_absolute_url(self): return reverse('blog:post_detail', args=[self.publish.year, self.publish.month, self.publish.day, self.slug]) def save(self, *args, **kwargs): # new if not self.slug: self.slug = slugify(self.title) return super().save(*args, **kwargs) views.py class PostUpdateView(LoginRequiredMixin, UserPassesTestMixin, UpdateView): model = Post fields = ['title', 'body', 'tags', 'status'] template_name = 'blog/post/post_form.html' def form_valid(self, form): form.instance.author = self.request.user return super(PostUpdateView, self).form_valid(form) def test_func(self): post = self.get_object() if self.request.user == post.author: return True return False class PostDeleteView(LoginRequiredMixin, UserPassesTestMixin, DeleteView): model = Post template_name = 'blog/post/post_confirm_delete.html' success_url = … -
Replacing the default ManyToMany widget with CheckboxSelectMultiple widget doesn't insert the checked boxes in the database
I'm trying to insert change the default widget of the ManyToMany field in a Django form and I want to use the CheckboxSelectMultiple widget instead. No matter if I use CheckboxSelectMultiple widget or the default widget for ManyToMany field, the rows corresponding to the checkboxes don't get inserted at all. I looked at the solutions here, here and here, but I don't understand what I'm doing wrong. Here's the relevant code: models.py: class Employer(models.Model): # user = models.OneToOneField(get_user_model(), on_delete=models.CASCADE) name = models.CharField(max_length=100, unique=True) location = models.CharField(max_length=MAXIMUM_LOCATION_LENGTH, choices=COUNTRY_CITY_CHOICES, blank=True) short_bio = models.TextField(blank=True, null=True) website = models.URLField(blank=True) profile_picture = models.ImageField(upload_to=get_upload_path_profile_picture, blank=True, null=True) admin_approved = models.BooleanField(default=False) def __str__(self): return self.name class Category(models.Model): name = models.CharField(max_length=MAXIMUM_CATEGORY_LENGTH) def __str__(self): return self.name class JobListing(models.Model): employer = models.ForeignKey(Employer, on_delete=models.CASCADE) job_title = models.CharField(max_length=100) job_description = models.TextField() job_requirements = models.TextField(); what_we_offer = models.TextField(); # https://stackoverflow.com/questions/2771676/django-datetime-issues-default-datetime-now time_added = models.DateField(default=now) job_application_url = models.URLField(unique=True) admin_approved = models.BooleanField(default=False) categories = models.ManyToManyField(Category) def __str__(self): return self.job_title forms.py: EmployerForm = modelform_factory(Employer, fields=["name", "location", "short_bio", "website", "profile_picture"], widgets={"location": s2forms.Select2Widget}) class JobListingForm(forms.ModelForm): job_title = forms.CharField(max_length=100) job_description = forms.CharField(widget=forms.Textarea) job_requirements = forms.CharField(widget=forms.Textarea) what_we_offer = forms.CharField(widget=forms.Textarea) job_application_url = forms.URLField() categories = forms.ModelMultipleChoiceField( queryset=Category.objects.all(), widget=forms.CheckboxSelectMultiple, required=True) class Meta: model = JobListing fields = ["job_title", "job_description", "job_requirements", "what_we_offer", "job_application_url", "categories"] views.py: … -
"AssertionError: False is not true" keeps popping up whenever i run tests.py on my django project
I am following a tutorial by Tom Aratyn in which i would test whether pagination works properly. Here is the tests.py file: from django.test import TestCase from django.test.client import \ RequestFactory from django.urls.base import reverse from core.models import Movie from core.views import MovieList class MovieListPaginationTestCase(TestCase): ACTIVE_PAGINATION_HTML = """ <li class="page-item active"> <a href="{}?page={}" class="page-link">{}</a> </li> """ def setUp(self): for n in range(15): Movie.objects.create( title='Title {}'.format(n), year=1990 + n, runtime=100, ) def testFirstPage(self): movie_list_path = reverse('core:MovieList') request = RequestFactory().get(path=movie_list_path) response = MovieList.as_view()(request) self.assertEqual(200, response.status_code) self.assertTrue( response.context_data['is_paginated']) self.assertInHTML( self.ACTIVE_PAGINATION_HTML.format( movie_list_path, 1, 1), response.rendered_content) This is already a copy-paste code from the book, however, the AssertionError keeps popping up. (m_env) C:\Users\mrblu\MyMDB\django>python manage.py test Creating test database for alias 'default'... System check identified no issues (0 silenced). F ====================================================================== FAIL: testFirstPage (core.tests.MovieListPaginationTestCase) ---------------------------------------------------------------------- Traceback (most recent call last): File "C:\Users\mrblu\MyMDB\django\core\tests.py", line 31, in testFirstPage self.assertTrue( response.context_data['is_paginated']) AssertionError: False is not true ---------------------------------------------------------------------- Ran 1 test in 0.021s FAILED (failures=1) Destroying test database for alias 'default'... Thank you guys in advance. newbie here. I started coding only this feb 2020, and im already 25 yrs old. Im taking this on. -
Django: How to make a Grouped Choice Field that doesn't show children until hovered?
Currently, I have: Code in forms.py: class ExpenseForm(forms.Form): CHOICES = ( ('Debt', ( (11, 'Credit Card'), (12, 'Student Loans'), (13, 'Taxes'), )), ('Entertainment', ( (21, 'Books'), (22, 'Games'), )), ('Everyday', ( (31, 'Groceries'), (32, 'Restaurants'), )), ) amount = forms.DecimalField() date = forms.DateField() category = forms.ChoiceField(choices=CHOICES) In production, I have much more categories than the example above so if I show the children of each category as well in the first drop-down, it'll take the user a lot of scrolling to find the right child. What I want to do is have the children of each category only displayed in a separate drop-down beside the first one when the mouse is hovering on the category. This would cut down the amount of irrelevant entries in the first drop-down. How can I do that? -
first name and last name does not save in django admin profiles app
when i create a new user,first name and lastname field only saves to user model. my profile model for first name and lastname fields are blank in my admin panel, it only shows when i check the users model in the admin and because of this it i cannot use the full_name field in my templates. models.py from django.db import models from django.contrib.auth.models import User from django.contrib.auth import get_user_model from django.db.models.signals import post_save from django.dispatch import receiver from django.conf import settings from django.utils.text import slugify from django.contrib.auth.models import AbstractBaseUser get_user_model().objects.filter(is_superuser=True).update(first_name='Super', last_name='User') # superusers = User.objects.filter(is_superuser=True) class Profile(AbstractBaseUser): user = models.OneToOneField(User, on_delete=models.CASCADE, primary_key=True) last_name = models.CharField(max_length=100, blank=True) first_name = models.CharField(max_length=100, blank=True) last_name = models.CharField(max_length=100, blank=True) full_name = models.CharField(max_length=128, blank=True) next_of_kin = models.CharField(max_length=100, blank=True) dob = models.CharField(max_length=100, blank=True) state = models.CharField(max_length=100, blank=True) password = models.CharField(max_length=100, blank=True) email = models.EmailField(max_length=150) signup_confirmation = models.BooleanField(default=False) address = models.CharField(max_length=255, null=True) country = models.CharField(max_length=255, null=True) phonenumber = models.CharField(max_length=20, null=True) appointment_with = models.ManyToManyField(User, related_name='appontment_with', blank=True) slug = models.SlugField(max_length=200, null=True) USERNAME_FIELD ='user' def save(self, *args, **kw): self.full_name = '{0} {1}'.format(self.first_name, self.last_name) super(Profile, self).save(*args, **kw) def save(self, *args, **kwargs): self.slug = slugify(f"{self.last_name}-{self.first_name}") super(Profile, self).save(*args, **kwargs) def __str__(self): return self.user.username views.py def signup_view(request): form = SignUpForm(request.POST) if form.is_valid(): print ("form is … -
how can i can do Auto Number in Pisa django template?
can i do auto number in pisa django template? cause when i use java scripts, its not working how can i do that auto number?, any tips? this is my views.py template_path = 'pengurusan/report_bulan_lurah.html' postingan_list4 = Pengajuan_SKTM.objects.filter(uploaded_at__year=pkk, uploaded_at__month=pk, kelurahan=request.user.profile.kelurahan, status_diterima_lurah="Diproses" ) usernya = request.user.profile.kelurahan items = request.GET.get('page', 1) context = { 'report2' : postingan_list4, 'items' : items, 'usernya':usernya, } response = HttpResponse(content_type='application/pdf') response['Content-Disposition'] = 'attachment; filename="report.pdf"' template = get_template(template_path) html = template.render(context) pisa_status = pisa.CreatePDF( html, dest=response, link_callback=link_callback) if pisa_status.err: return HttpResponse('We had some errors <pre>' + html + '</pre>') return response this is my html <table class="test" align="center" width="621px" border="1" align="left" style='margin-top:0cm;margin-right:0cm; margin-bottom:5pt;margin-left: 0cm;padding-left:0cm;mso-add-space:auto; font-size:12.0pt;line-height:150%;font-family:"Times New Roman",serif'> <tr> <th style="padding-top: 0.05cm;" align=center width="18">No</th> <th style="padding-top: 0.05cm;" align=center width="170px">Nama Lengkap</th> </tr> {% for hitung2 in report2 %} <tr> <td style="padding-left: 0.02cm;padding-top: 0.050cm;">{{hitung2.nama_lengkap}}</td> </tr> {% endfor %} </table> and this is my script in html <script type="text/javascript"> var addNumeration = function(cl){ var table = document.querySelector('table.' + cl) var trs = table.querySelectorAll('tr') var counter = 1 Array.prototype.forEach.call(trs, function(x,i){ var firstChild = x.children[0] if (firstChild.tagName === 'TD') { var cell = document.createElement('td') cell.textContent = counter ++ x.insertBefore(cell,firstChild) } else { firstChild.setAttribute('colspan',1) }})} addNumeration("test") </script> -
Serializing objects runs too much SQL queries
I'm trying to serialize related field set to list. The problem is serializing a QuerySet is very inefficient. class ZipCode(..): city = ForeignKey... code = CharField... class CityManager(models.Manager): def get_queryset(self): return super().get_queryset().select_related('county').prefetch_related('zipcodes').annotate( realestate_count=Count('zipcodes__realestates')).order_by('name', ) class City(..): .... @property def zip_codes_list(self): return self.zipcodes.values_list('code', flat=True) As you can see, I'm prefetching zipcodes so I suppose it shouldn't do so many queries. class CitySerializer(serializers.ModelSerializer): county = CountySerializer(read_only=True) zip_codes_list = serializers.ListField(read_only=True) realestate_count = serializers.IntegerField(default=0, read_only=True) indexed_at_hmnz = serializers.CharField(read_only=True) index_status_display = serializers.CharField(source='get_index_status_display', read_only=True) class Meta: model = City fields = ['id', 'name', 'county', 'realestate_count', 'zip_codes_list','indexed_at', 'indexed_at_hmnz', 'index_status_display', 'is_followed'] According to the Django debug toolbar, it queries zipcodes for every object separately. Do you know how to make it more efficient? -
SearchFilter: return .none() as long no ?search input given
I created the following view in my REST API. It works as intended, the only issue I still have is that if NO search term is defined, the first 15 results from my database are returned (without any filtering). Is there are a way to return User.objects.none() as long no ?search input is given? class UserRetrieve(generics.ListAPIView): permission_classes = [RetoolPermissions] queryset = User.objects.all() serializer_class = UserSerializer filter_backends = [filters.SearchFilter] search_fields = ["email", "first_name", "last_name"] -
how to create a dynamic link in Django
how can i build dynamic link in Django? I have a blog and each post need to have a unique link. content of blog's post must show on linked page. I searched in google but i'm was a little confused. Thanks -
How do I get Django Admin to delete files when I remove an object from the database/model when there's two classes?
I use this to delete a file and it works: @receiver(post_delete, sender=mymodel) def submission_delete(sender, instance, **kwargs): instance.file.delete(False) but I have two models with files and when I copy paste that code and just changing the name of my model it doesn't work anymore like this: @receiver(post_delete, sender=mymodel) def submission_delete(sender, instance, **kwargs): instance.file.delete(False) @receiver(post_delete, sender=mymodel2) def submission_delete(sender, instance, **kwargs): instance.file2.delete(False) how can I fix that? -
deploy django app with nginx and gunicorn on subdirectory besides static pages
I have developed a django application which I want to deploy to a linux server with gunicorn and nginx. So far, the server is already hosting several static web pages with nginx. The root is still the default page of nginx, while on two subdirectories, say domain.com/a and domain.com/b, two static homepages are deployed. Now, this app shall be run under domain.com/apps/viewer. I have setup the app in a virtual environment in the home directory of user c. Serving static files etc works fines, but only if I deploy the app in root with the nginx config below: server { listen 80; server_name domain.com; location = /favicon.ico { access_log off; log_not_found off; } location /static/ { root /home/c/viewer/; } location / { include proxy_params; proxy_pass http://unix:/home/c/viewer/viewer.sock; } } server { listen [::]:443 ssl; # managed by Certbot listen 443 ssl; # managed by Certbot ssl_certificate /etc/letsencrypt/live/.../fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/.../privkey.pem; include /etc/letsencrypt/options-ssl-nginx.conf; ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; root /home/c/viewer/; server_name domain.com; location /static/ { root /home/c/viewer/; } location / { proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_redirect off; proxy_set_header X-Forwarded-Proto $scheme; proxy_pass http://unix:/home/c/viewer/viewer.sock; } } With this config, the static pages are not accessible anymore and return the error that Django does not find the … -
Django ArrayField Default Should be a Callable
I'm trying to use postgresql ArrayField in my django project setting it a default, but I can't get rid of the warning ArrayField default should be a callable instead of an instance so that it's not shared between all field instances. HINT: Use a callable instead, e.g. use list instead of [] This is my code: def get_default_subscriptions(): return 'Noticias, Promociones, Pagos, Compras'.split(', ') # this returns a list class myModel(models.model): # other fields subscriptions = ArrayField(models.CharField(max_length=200), default=get_default_subscriptions()) # this is a callable, so, why the warning? Docs say about this: If you give the field a default, ensure it’s a callable such as list (for an empty default) or a callable that returns a list (such as a function). Incorrectly using default=[] creates a mutable default that is shared between all instances of ArrayField. Can you give me an idea of what am I doing wrong? -
Django Edit Or Delete Selected Rows In A Table - ListView
I have a table with checkboxes and I would like to be able to delete or edit a specific field value for all the selected rows in the table. Here's an example table that would be awesome to recreate but I have not found examples anywhere how this may work in the view and template. https://examples.bootstrap-table.com/# My current view, which is working with a table. Where can I start to make the leap from a basic table to an interactive one like in the example above? Views.py class EntryList(LoginRequiredMixin, ListView): context_object_name = 'entry_list' paginate_by = 100 # paginate_by = 5 #ordering = ['-pk'] model = Entry template_name = "portfolios/entry_list.html" def get_queryset(self): return Entry.objects.filter(created_by=self.request.user).order_by('-pk') def post(self, request, *args, **kwargs): ids = self.request.POST.get('ids', "") # ids if string like "1,2,3,4" ids = ids.split(",") try: # Check ids are valid numbers ids = map(int, ids) except ValueError as e: return JsonResponse(status=400) # delete items self.model.objects.filter(id__in=ids).delete() return JsonResponse({"status": "ok"}, status=204) -
How to find open-source projects from Remote Companies on GitHub?
I want to find GitHub repositories to work to improve my skills and maybe get a job -
how to host Django (sqlite database ) website on Google app engine
I have made my dream website with the help of Django and using sqlite as my database but while I was trying to host on heroku via my udemy course tutorial it was showing some error that python version was not matching and I tried a lot to resolve it but I was not able to and also I thought that why not to try some more trusted company service so I thought of Amazon aws and Google app engine but the only thing with amaZon was that it is really complicated so I thought of using Google app engine but when I read tutorials and reviews I wasn't sure that if Google app engine supports sqlite or not so if anyone has any type of knowledge about does Google app engine support sqlite or not please tell me. -
Django channels - connection timed out
I created a django-channels app that works without any problem in local. I'm now trying to deploy it to a DigitalOcean droplet. The whole Django WSGI part works, the only part not working is Django-Channels. If i try to connect to any consumer like below: ws://MYURL:9000/main I get the following error on my Chrome console: WebSocket connection to 'ws://MYURL:9000/main' failed: Error in connection establishment: net::ERR_CONNECTION_TIMED_OUT Daphne service: [Unit] Description=Daphne service After=network.target [Service] PIDFile=/run/daphne/pid User=root Group=root WorkingDirectory=/django-vue-mpa ExecStart=/django-vue-mpa/venv/bin/daphne --bind 0.0.0.0 --port 9000 --verbosity 0 django_vue_mpa.asgi:application ExecReload=/bin/kill -s HUP $MAINPID ExecStop=/bin/kill -s TERM $MAINPID Restart=on-abort PrivateTmp=true [Install] WantedBy=multi-user.target And here is my actual nginx conf: server { listen 80; server_name http://MYURL/; location = /favicon.ico { access_log off; log_not_found off; } location /static/ { root /django-vue-mpa/django_vue_mpa; } location / { include proxy_params; proxy_pass http://unix:/django-vue-mpa/django-vue-mpa.sock; } } -
Unable to use override_settings class decorator with setUpClass and tearDownClass Django
I am trying to write unittests in django. I encountered different behaviours of override_settings decorator when used with setUpClass and tearDownClass classmethods. Following is the code which doesn't work: import logging from django.test import SimpleTestCase, override_settings from django.http import Http404 from django.core.exceptions import SuspiciousOperation, PermissionDenied from django.urls import path from django.views.defaults import server_error def http_400_view(request): """Test view for 400 """ raise SuspiciousOperation def http_403_view(request): """Test view for 403 """ raise PermissionDenied def http_404_view(request): """Test view for 404 """ raise Http404 def http_500_view(request): """Test view for 500 """ return server_error(request) urlpatterns = [ path('400/', http_400_view), path('403/', http_403_view), path('404/', http_404_view), path('500/', http_500_view), ] @override_settings(ROOT_URLCONF=__name__) class ErrorCodeHandlerTests(SimpleTestCase): """ Tests for error code handlers """ @classmethod def setUpClass(cls): logging.disable(logging.CRITICAL) @classmethod def tearDownClass(cls): logging.disable(logging.NOTSET) status_codes = [400, 403, 404, 500] templates = ['400.html', '403.html', '404.html', '500.html'] user_messages = ['Bad request', 'Permission denied', 'Page not found', 'Internal server error'] def test_correct_html_rendered_on_error_code(self): """Test if correct template and error code exists in response after http errors """ for i in range(len(self.status_codes)): with self.subTest(i=i): response = self.client.get('/' + str(self.status_codes[i]) + '/') self.assertTemplateUsed(response, self.templates[i]) self.assertContains( response, self.user_messages[i], status_code=self.status_codes[i], html=True ) In above code, settings are not overriden and I get 404 for all the urls. Following is the code which … -
how to filter posts in which substring of a field is included in a given list of strings in django?
I have a list of strings as below: items = ['apple', 'shoes', 'milk', 'blue', 'black', 'phone'] and a field in my django model field which has strings separated by (,)comma like below: tag = 'apple, phone, tenis, telvision' I want to filter those posts which have at least one item in their tag field which also listed in the given list. This is what I tried but does not give me result: posts = Post.objects.filter(tag__in=items) -
django.urls.exceptions.NoReverseMatch: Reverse for 'rentals-detail' with no arguments not found. 1 pattern(s) tried: ['(?P<pk>[0-9]+)/$']
I am trying to add url tag to a template and keeps running to this error: django.urls.exceptions.NoReverseMatch: Reverse for 'rentals-detail' with no arguments not found. 1 pattern(s) tried: ['(?P[0-9]+)/$'] I have tried all the suggested solutions but none seems to work. I'm guessing it is an issue with the template or my urls this is the affected template {% extends 'index.html' %} {% load static %} {%block content%} <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/css/bootstrap.min.css" integrity="sha384-TX8t27EcRE3e/ihU7zmQxVncDAy5uIKz4rEkgIXeMed4M0jlfIDPvg6uqKI2xXr2" crossorigin="anonymous"> <div class="row"> {% for rental in rentals %} <div class="col"> <div class="card" style="width: 18rem;"> <img src="{{ rental.main_image.url}}" class="card-img-top" alt=" A photo of the house"> <div class="card-body"> <h5 class="card-title">{{ rental.size}}</h5> <p class="card-text">{{ rental.rent }}</p> <a href="{% url 'rentals-detail' %}" class="btn btn-primary">View</a> </div> </div> </div> {% endfor %} </div> </div> <!-- end of the cards container --> </div> </div> <!-- end of the main content area of the website --> <script src="https://code.jquery.com/jquery-3.5.1.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script> <script src="https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-ho+j7jyWK8fNQe+A12Hb8AhRq26LrZ/JpcUGGOn+Y7RsweNrtN/tE3MoK7ZeZDyx" crossorigin="anonymous"></script> {% endblock %} my app's urls from django.urls import path from . import views from .views import RentalsDetailView urlpatterns=[ path('',views.rentals_all,name='rental-home'), path(r'<int:pk>/',RentalsDetailView.as_view(),name='rentals-detail') ] my views from django.shortcuts import render from django.views.generic import ListView,DetailView from .models import rentals def rentals_all(request): Rentals=rentals.objects.all().order_by('-date_posted') context={'rentals':Rentals} return render(request,'rentals/home.html',context) class RentalsDetailView(DetailView): model = rentals and my model from … -
ForwardManyToOneDescriptor' object has no attribute 'slug Django using reverse
I want to use reverse in the model to back a URL, which has three slugs. But it gives me an error. my URL is like this: site.com/category/slug/slug/slug ...> site.com/category/mobile/nokia/n95 Error: 'ForwardManyToOneDescriptor' object has no attribute 'slug' Model: from Django.db import models from Django.shortcuts import reverse class Category(models.Model): name = models.CharField(max_length=150) slug = models.SlugField(unique=True, max_length=200) child_category = models.ForeignKey('self', max_length=150, null=True, blank=True, on_delete=models.CASCADE) is_child = models.BooleanField(default=False) def __str__(self): return self.name def get_absolute_url(self): return reverse('shop:brands', args=[self.slug]) class Product(models.Model): category = models.ManyToManyField(to=Category, related_name='products') name = models.CharField(max_length=150) slug = models.SlugField(unique=True, max_length=200) description = models.TextField() class Meta: ordering = ('name', 'available',) def __str__(self): return self.name def get_absolute_url(self): return reverse('shop:product_details', self.category.model.slug, self.category.model.child_category.slug, self.slug) URL: from Django.urls import path from Shop import views app_name = 'shop' urlpatterns = [ path('<slug:brands_slug>/', views.brands, name='brands'), path('<slug:brands_slug>/<slug:product_slug>/', views.products, name='products'), path('<slug:brands_slug>/<slug:product_slug>/<slug:product_details>/', views.details_products, name='product_details'), ] View: def details_products(request, brands_slug, product_slug, product_details): details = Product.objects.filter(category__child_category__slug=brands_slug, category__slug=product_slug, slug=product_details) context = {'details': details} return render(request, 'shop/product_details.html', context=context) -
Django UpdateView is missing a QuerySet
Even if I defined a model in my UpdateView this one keep raising this queryset error and i don't know how to fix this, the error : django.core.exceptions.ImproperlyConfigured: UpdateClient is missing a QuerySet. Define UpdateClient.model, UpdateClient.queryset, or override UpdateClient.get_queryset(). I have never had to define a QuerySet in my UpdateView before, so I dont get why it is asking for one now. models.py class User(AbstractUser): is_logisticien = models.BooleanField(default=False) is_client = models.BooleanField(default=False) is_livreur = models.BooleanField(default=False) class Adresse(models.Model): adresse = models.CharField(max_length=256) complement_adresse = models.CharField(max_length=256, blank=True) code_postal = models.CharField(max_length=256) ville = models.CharField(max_length=256) def __str__(self): return f'{self.adresse}, {self.code_postal} {self.ville}' class Client(models.Model): user = models.OneToOneField(User, on_delete=models.CASCADE, related_name='client') adresse = models.OneToOneField(Adresse, on_delete=models.CASCADE, related_name='client') entreprise = models.CharField(max_length=256) def __str__(self): return self.entreprise forms.py class AdresseForm(forms.ModelForm): class Meta: model = models.Adresse fields = '__all__' class UserForm(forms.ModelForm): class Meta: model = models.User fields = ('first_name', 'last_name', 'email') class ClientForm(forms.ModelForm): class Meta: model = models.Client fields = ('entreprise',) class ClientMultiForm(MultiModelForm): form_classes = { 'user': UserForm, 'adresse': AdresseForm, 'client': ClientForm } views.py class CreateClient(CreateView): success_url = reverse_lazy('web_app:client-list') template_name = 'web_app/Client/create.html' form_class = forms.ClientMultiForm def form_valid(self, form): user = form['user'].save(commit=False) user.username = fonctions.username_generator() password = fonctions.password_generator() user.set_password(password) user.save() adresse = form['adresse'].save() client = form['client'].save(commit=False) client.user = user client.adresse = adresse client.save() return super(CreateClient,self).form_valid(form) … -
How to set an order on an embedded field in the Djongo?
I want to set an order_by on an embedded field using Djongo module. How could I make this query using Djongo module when I use of MongoDB database. -
Why I get ERR_HTTP2_PING_FAILED on file upload to server with slow internet?
I'm using the Angular app as a frontend and Django rest framework for backend service and Gunicorn application server to interface with my application and Nginx to reverse proxy to Gunicorn to its security and performance features to serve my app. There is one request for uploading the file to the server and it fails when the file is large (about 100mb) and the internet is slow and everything is fine with small files (under 10mb). Here are errors that I get net::ERR_TIMED_OUT net::ERR_HTTP2_PING_FAILED net::ERR_CONNECTION_RESET Here is my Nginx config: location ~ ^(/upload_video/[^/]+) { keepalive_timeout 128; proxy_buffer_size 128k; proxy_buffers 4 256k; proxy_busy_buffers_size 256k; client_max_body_size 100M; proxy_pass http://unix:/run/gunicorn.sock; } And here is my Gunicorn service: [Unit] Description=gunicorn daemon Requires=gunicorn.socket After=network.target [Service] User=ubuntu Group=www-data WorkingDirectory=/home/ubuntu/rest_api ExecStart=/home/ubuntu/hediehchi_rest_api/myenv/bin/gunicorn \ --access-logfile - \ --workers 3 \ --timeout 180 \ --bind unix:/run/gunicorn.sock \ webapp.wsgi:application [Install] WantedBy=multi-user.target What's the problem? comment below if any information needs to be added. -
How to add multiple objects id in Django foreign key field?
Suppose I have a model like as My model.py: class MyMenu(models.Model): title = models.CharField(max_length = 100, blank=True, null=True) user_role = models.ForeignKey(UserRole) I want to set multiple objects in the user_role field. like as user_role = [1,2,3,4....] How is it possible? please anybody help me to solve the problem