Django community: RSS
This page, updated regularly, aggregates Django Q&A from the Django community.
-
How to stick the second upload file button on the same place?
I have two upload buttons. But the second upload button jumps down after submit. So I have this html: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Create a Profile</title> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <link rel="stylesheet" type="text/css" href="{% static 'main/css/custom-style.css' %}" /> <link rel="stylesheet" type="text/css" href="{% static 'main/css/bootstrap.css' %}" /> </head> <body> <div class="container center"> <span class="form-inline" role="form"> <div class="inline-div"> <form class="form-inline" action="controlepunt140" method="POST" enctype="multipart/form-data"> <div class="d-grid gap-3"> <div class="form-group"> {% csrf_token %} {{ pdf_form.as_p }} </div> <div class="form-outline"> <div class="form-group"> <div class="wishlist"> <table class="paddingBetweenRows"> <tr> <th>fruit aantal </th> <th>&nbsp;&nbsp;&nbsp;fruit naam</th> <th>fruit kosten</th> <th>fruit totaal soort</th> <th>fruit totaal kosten</th> </tr> {% for value0, value1, value2, value3, value4 in content %} <tr> <td>{{ value0 }}</td> <td>{{ value1 }}</td> <td>{{ value2 }}</td> <td>{{ value3 }}</td> <td> <span {% if value4 in diff_set %} style="color: red;" {% endif %}> {{value4}}</span> </td> </span> </tr> {% endfor %} </table> </div> </div> </div> </div> </div> </span> <span class="form-inline" role="form"> <div class="inline-div"> <form class="form-inline" action="controlepunt140" method="POST" enctype="multipart/form-data"> <div class="d-grid gap-3"> <div class="form-group"> {% csrf_token %} {{ excel_form.as_p }} </div> <div class="form-outline"> <div class="form-group"> <div class="wishlist"> <table class="paddingBetweenRows"> <tr> <th>fruit kosten totaal </th> </tr> {% for value0 in content_excel %} <tr> <td> <span {% if … -
How do I customize the input format accepted by Django auth's PasswordResetView?
I'm using Django 3.1 witih Python 3.9. I'm using Django's django.contrib.auth application to manage my users. I would like to setup a reset password for my users, using Django's "PasswordResetView", but am unsure how to customize it to suit submitting a JSON request. I have created this in my urls.py file path('reset_password/', views.ResetPasswordView.as_view(), name='password_reset'), path('password-reset-confirm/<uidb64>/<token>/', auth_views.PasswordResetConfirmView.as_view(template_name='users/password_reset_confirm.html'), name='password_reset_confirm'), path('password-reset-complete/', auth_views.PasswordResetCompleteView.as_view(template_name='users/password_reset_complete.html'), name='password_reset_complete'), Defined this in my views.py file class ResetPasswordView(SuccessMessageMixin, PasswordResetView): template_name = 'users/password_reset.html' email_template_name = 'users/password_reset_email.html' subject_template_name = 'users/password_reset_subject' success_message = "We've emailed you instructions for setting your password, " \ "if an account exists with the email you entered. You should receive them shortly." \ " If you don't receive an email, " \ "please make sure you've entered the address you registered with, and check your spam folder." success_url = reverse_lazy('users-home') and defined these in my settings.py file EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' EMAIL_HOST = 'smtppro.zohopro.com' EMAIL_USE_TLS = True EMAIL_PORT = 587 EMAIL_HOST_USER = str(os.getenv('EMAIL_USER')) EMAIL_HOST_PASSWORD = str(os.getenv('EMAIL_PASSWORD')) However, when I submit a POST request to my endpoint with the data {"username": "myuser@example.com"} in which "myemail@example.com" is a registered user, I get back curl: (52) Empty reply from server The specific curl request looks like the below, for what it's worth … -
Django multiple SMTP accounts
Here are the Django simple SMTP backend settings for just 1 email account EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' EMAIL_HOST = "mail.mysmtpserver.somewhere" EMAIL_PORT = 587 EMAIL_HOST_USER = "my@login" EMAIL_HOST_PASSWORD = "mypassword" EMAIL_USE_TLS = True How is it possible to use 2 or more email accounts on the same server instead of one? EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' EMAIL_HOST = "mail.mysmtpserver.somewhere" EMAIL_PORT =587 EMAIL_HOST_USER = "my@login2" EMAIL_HOST_PASSWORD = "mypassword2" EMAIL_USE_TLS = True I just need to send different emails based on the subject by different email account. I checked the Django documentation but there was nothing -
Returning celery task id to view
In my celery task, I want to calculate median of an array. My view: import myapp.tasks as tasks def my_view(request): data_arr = [[1,2], [3,4]] response = { 'median': tasks.median.delay(data_arr).id } return HttpResponse(json.dumps(response)) Here's the task file: from celery import shared_task import numpy @shared_task def median(arr): return numpy.mean(arr) When I call the view, I can get the following output: {"median": "88edea52-c60a-42a8-ad8d-799a4c7117a6"} The problem is celery outputs following error: File "/Users/tolgafiratoglu/Desktop/projects/python/nadir/process/tasks.py", line 7, in median return numpy.mean(arr).id AttributeError: 'numpy.float64' object has no attribute 'id' I understand the error, but I can't figure out how to proceed. -
put a word with white space as a variable in a sql query using .format()
I would like to know how to put a word with white space as a variable in a sql query (I use postgresql) data = "something with white space" choice = "DESC" limit = 10 def rDB(sql_request): with connection.cursor() as cursor: cursor.execute(sql_request) row = cursor.fetchall() return row queryWithFormat(data, choice, limit): return(''' SELECT col1, SUM(col2) as nb FROM Table WHERE col1 = {d} ORDER BY nb {c} LIMIT {l} '''.format(d=data, c=choice, l=limit) rDB(queryWithFormat(data, choice, limit)) django.db.utils.ProgrammingError: ERROR: syntax error on or near 'with' LINE 8: WHERE col1 = something with white ... -------------------------------^ -
how to get multiple input values in django loop (template) using javascript?
I am trying to get the value of some input field in my django template, the form is in a loop e.g {% for p in prediction %} {% endfor %}. I have this simple line to grab the id from the input field let odds = document.getElementById("odds").value Based on the fact that i have all these function in a django loop, am i not supposed to get all the odds when i console.log(odds) {% for p in prediction.prediction_data.all %} <form action="#" method="POST"> <input type="text" value="{{ p.odds }}" id="odds"> <input type="number" value="" name="amount" id="amount" onkeyup="CalculateNewBalance()"> <script> function CalculateNewBalance(){ let odds = document.getElementById("odds").value let stake_amount_input = document.getElementById("amount") console.log(odds); </script> </form> {% endfor %} [![enter image description here][1]][1] -
How to use both static files and media together
Is it possible to use both static files and media in a project? because all tutorials use only one of them. MEDIA_URL= 'media/' MEDIA_ROOT = BASE_DIR / 'media' STATIC_URL = 'static/' STATIC_ROOT = BASE_DIR / 'static/' STATICFILES_DIRS = BASE_DIR / 'static/ I wrote this to setting. How am supposed to modify urls.py? urlpatterns = [ path('admin/', admin.site.urls), path('',include('pages.urls')), path('users/',include('users.urls')), path('users/',include('django.contrib.auth.urls')), ] + static(settings.MEDIA_URL,document_root=settings.MEDIA_ROOT) I wrote it this way but how should I add static urls? -
Twitter OAuth 2.0 Refresh Token Error - (invalid_request) Value passed for the token was invalid
I was running into this error while using Tweepy with OAuth 2.0 User Auth with PKCE when I tried to refresh the token via the User Handler. It was being returned when trying to call the non-production Tweepy refresh function on an expired token. -
Django channels + HTMX -> notification messages framework
I'd like to implement a notification framework for Django that uses channels/websockets and HTMX. But I don't get how to do that. Some things work, some are extremely complicated n my mind at least. Here's the code: from asgiref.sync import async_to_sync from channels.generic.websocket import WebsocketConsumer from channels.layers import get_channel_layer from django.contrib import messages from django.template.loader import get_template from medux.common.models import User class NotificationConsumer(WebsocketConsumer): def connect(self): self.user = self.scope["user"] if not self.user.is_authenticated: self.close() return # create a group "user-<username>" async_to_sync(self.channel_layer.group_add)( f"user-{self.user.username}", self.channel_name, ) self.accept() def disconnect(self, close_code): async_to_sync(self.channel_layer.group_discard)( f"user-{self.user.username}", self.channel_name, ) def notify(self, event: dict): html = get_template("common/toast.html").render( context={"message": event["message"]} ) self.send(text_data=html) <div hx-ext="ws" ws-connect="/ws/messages"> <div id="toasts" class="toast-container position-fixed bottom-0 end-0 p-3 pb-5"> {% for message in messages %} <div id="toasts" hx-swap-oob="beforeend"> <div data-toast-template class="toast align-items-center border-0 show" role="alert" aria-live="assertive" aria-atomic="true"> {# header here #} <div data-toast-body class="toast-body">{{ message }}</div> <button type="button" class="btn-close btn-close-white me-2 m-auto" data-bs-dismiss="toast" aria-label="Close"></button> </div> </div> {% endfor %} </div> </div> The client connects to the consumer, and if I write a small `self.send(text_data="foo") AFAIK, I have to send an "high level" event to the consumer with the type "notify", so the notify() method is called. So this would be a code called anywhere in a view … -
Django 403 error for static files on shared hosting using passenger_wsgi
I'm trying to get my Django app running on a shared hosting site using passenger_wsgi (following the instruction of the hosting provider). Since the app is for the main domain I installed it using this folder layout: public_html django static css js images SMC_website templates In settings.py I have: STATIC_URL = 'static/' STATICFILES_DIRS = [ '/home/xxxxxx/public_html/django/static/', '/home/xxxxxx/public_html/django/static/css', '/home/xxxxxx/public_html/django/static/js', '/home/xxxxxx/public_html/django/static/images', ] In urls.py I have: urlpatterns = [ path('admin/', admin.site.urls), re_path(r"^$", views.index, name="Home Page"), ] urlpatterns += static(settings.STATIC_URL, document_root=os.path.join(settings.BASE_DIR, 'static')) When I try out the "static(settings.STATIC_URL,document_root=os.path.join(settings.BASE_DIR, 'static'))" in the django manage.py shell I get a an empty list ([]). Not sure why, or if this is the cause of my problem. The app runs, pulls data from the database, but generates a 403 error for any content accessed from the static folders (css, js, or images). I have these folder permisisons: drwxr-x--- 2 xxxxxx xxxxxx 4096 Dec 17 18:30 css drwxr-x--- 8 xxxxxx xxxxxx 4096 Dec 17 18:30 images drwxr-x--- 3 xxxxxx xxxxxx 4096 Dec 17 18:30 js drwxr-xr-x 5 xxxxxx xxxxxx 4096 Dec 11 14:24 SMC_website drwxr-xr-x 3 xxxxxx xxxxxx 4096 Dec 11 14:24 logs -rw-r--r-- 1 xxxxxx xxxxxx 689 Dec 11 14:24 manage.py -rw-r--r-- 1 xxxxxx xxxxxx 1442 Dec … -
Django admin: reverse select foreign keys
I want to add pre-existing foreignkey items from the parent's admin. I have a "Bundle" model to hold "Product" items; many-to-one/foreignkey: models.py class Bundle(models.Model): title = models.CharField(max_length=300) class Product(models.Model): title = models.CharField(max_length=300) bundle = models.ForeignKey( 'Bundle', on_delete=models.CASCADE, null=True, blank=True, ) Below, I used StackedInline but this is for creating new products with a form: admin.py class ProductInline(admin.StackedInline): model = Product @admin.register(Bundle) class BundleAdmin(admin.ModelAdmin): inlines = [ ProductInline, ] Instead, I want to repeatedly add existing products from a dropdown/search in the Bundle section of admin. So, I make a Bundle and then add a series of Products from a dropdown / with a search. Thanks in advance. -
How to make query for some fields of the models?
I am makine business directory and i stucked in city and districts pages of business directory. I made a simple business directory. All i want three queries; Forexample category name: Manufacturing First: I want one page like this: abc.com/directory/category/slug:slug(this slug means category name)/ ( I did, i have no problem with this page. Second: City url like this abc.com/directory/category/slug:slug/(city name with slug style)/. forexample abc.com/category/manufacturing/london/ Third: District url like this abc.com/directory/category/slug:slug/(city name with slug style)/. forexample abc.com/category/manufacturing/london/southwark(district names) I only did first one and second and third made me crazy... I tried lots of things but failed... Here are my codes: models.py from django.db import models from django.urls import reverse from tinymce import models as tinymce_models # Create your models here. class City(models.Model): city = models.CharField(max_length=50) slug = models.SlugField() def __str__(self): return str(self.city) class District(models.Model): district = models.CharField(max_length=50) slug = models.SlugField() city = models.ForeignKey(City, on_delete=models.CASCADE) def __str__(self): return str(self.district) class FirmaCategory(models.Model): title = models.CharField(max_length=255) slug = models.SlugField() class Meta: verbose_name_plural = 'Firma Kategorileri' def __str__(self): return str(self.title) class Firma(models.Model): category = models.ForeignKey(FirmaCategory, related_name="Firma", on_delete=models.CASCADE) title = models.CharField(max_length=255) slug = models.SlugField() adres = tinymce_models.HTMLField() tel = tinymce_models.HTMLField() website = tinymce_models.HTMLField() email = tinymce_models.HTMLField() intro = tinymce_models.HTMLField() body = tinymce_models.HTMLField() city = … -
Rendering data from a dictionary inside json after saving data into JSONField in Django
I am working on a django project whereby I am using JSONField to save data into the database of the model. Everything works fine but I am having issues when trying to render the data into the html template. The data saved into the database is as shown below. {'degree': ['BSc','MSc'], 'designition': [ 'content writer', 'data scientist', 'systems administrator', ], 'email': 'maunarokguy@gmail.com', 'name': 'Brian Njoroge', 'phone': '+918511593595', 'skills': [ 'Python', ' C++', 'Power BI', 'Tensorflow', 'Keras', 'Pytorch', 'Scikit-Learn', 'Pandas', 'NLTK', 'OpenCv', 'Numpy', 'Matplotlib', 'Seaborn', 'Django', 'Linux', 'Docker'], 'total_exp': 3, 'university': ['gujarat university', 'wuhan university', 'egerton university']} I am looking for a way to render them such that in the html, I will have something that displays the dictionary data inside skills and university as a list. Here is the template for loop {% for skill in user.profile.json_data %} {{skill}} {% endfor %} And here is the models class Profile(models.Model): user = models.OneToOneField(User, on_delete=models.CASCADE) avatar = models.ImageField(default='default.jpg', upload_to='profile_images') bio = models.TextField() resume = models.FileField('Upload Resumes', upload_to='resumes/', null=True, blank=True,default='resume.docx') json_data = models.JSONField(null=True, blank=True) Here is the views @login_required def myprofile(request, user_id): profile = Profile.objects.get(id=user_id) context = {'profile':profile} return render(request, 'user/profile.html', context) -
can not createsuperuser becuase one column (foreignkey) can not be null in django
I have started a django project with extending User model from AbstractUser to my CustomUser model which have foreign key relation with other model. When I try to create superuser with manage.py it does not create a superuser. It shows an error --> django.db.utils.IntegrityError: (1048, "Column 'cid_id' cannot be null"). Any help will be appreciated blog/models.py from django.db import models from django.utils import timezone from django.contrib.auth import get_user_model from ckeditor.fields import RichTextField # Create your models here. class Category(models.Model): cid = models.AutoField(primary_key=True) category_name = models.CharField(max_length=100) def __str__(self): return self.category_name class Post(models.Model): aid = models.AutoField(primary_key=True) image = models.ImageField(default='blog-default.png', upload_to='images/') title = models.CharField(max_length=200) # content = models.TextField() content = RichTextField() created = models.DateTimeField(default=timezone.now) author = models.ForeignKey(get_user_model(), on_delete=models.CASCADE) cid = models.ForeignKey(Category, on_delete=models.CASCADE, verbose_name='specialization') approved = models.BooleanField('Approved', default=False) like = models.ManyToManyField(get_user_model(), related_name='likes') def __str__(self): return self.title users/model.py from django.db import models from blog.models import Category from django.contrib.auth.models import AbstractUser # Create your models here. class CustomUser(AbstractUser): cid = models.ForeignKey(Category, on_delete=models.CASCADE) profile_pic = models.ImageField(default='default_person.jpg', upload_to='profile_pics') cid in the Category model is the foreign key in the Post and CustomUser model. But when I try to createsuperuser it shows the error I mentioned above. cid can not be null for the user because when a user … -
Are there other cases which "select_for_update()" doesn't work in Django?
When using select_for_update() with update() as shown below: # "store/views.py" from django.db import transaction from .models import Person from django.http import HttpResponse @transaction.atomic def test(request): # Here # Here print(Person.objects.select_for_update().all().update(name="Tom")) # Here # Here print(Person.objects.select_for_update().filter(id=1).update(name="Tom")) return HttpResponse("Test") Only UPDATE query is run without SELECT FOR UPDATE query as shown below. *I use PostgreSQL and these logs below are the queries of PostgreSQL and you can check On PostgreSQL, how to log queries with transaction queries such as "BEGIN" and "COMMIT": While when using select_for_update() with save() as shown below: # "store/views.py" from django.db import transaction from .models import Person from django.http import HttpResponse @transaction.atomic def test(request): # Here person1 = Person.objects.select_for_update().all().first() person1.name = "Tom" person1.save() # Here # Here person2 = Person.objects.select_for_update().filter(id=1).first() person2.name = "Tom" person2.save() # Here # Here person3 = Person.objects.select_for_update().get(id=1) person3.name = "Tom" person3.save() # Here return HttpResponse("Test") SELECT FOR UPDATE query and UPDATE query are run as shown below: And, when using select_for_update() with count() as shown below: # "store/views.py" from django.db import transaction from .models import Person from django.http import HttpResponse @transaction.atomic def test(request): # Here # Here print(Person.objects.select_for_update().all().count()) # Here # Here print(Person.objects.select_for_update().filter(id=1).count()) return HttpResponse("Test") SELECT query is run instead of SELECT FOR UPDATE … -
Problem when download Python package and then install from .whl files
I want to download Python package pipy.org and move them to another machine and finally install that packages with downloaded .whl files in that machine This is requirements.txt file: amqp==5.1.1 anytree==2.8.0 asgiref==3.5.2 async-timeout==4.0.2 attrs==22.1.0 autobahn==22.7.1 Automat==22.10.0 beautifulsoup4==4.11.1 billiard==3.6.4.0 celery==5.2.7 certifi==2022.9.24 cffi==1.15.1 channels==4.0.0 channels-redis==4.0.0 charset-normalizer==2.1.1 click==8.1.3 click-didyoumean==0.3.0 click-plugins==1.1.1 click-repl==0.2.0 constantly==15.1.0 coreapi==2.3.3 coreschema==0.0.4 cryptography==38.0.3 daphne==4.0.0 Deprecated==1.2.13 Django==4.0.8 django-celery-beat==2.3.0 django-celery-results==2.4.0 django-filter==22.1 django-jalali==6.0.0 django-timezone-field==5.0 djangorestframework==3.14.0 djangorestframework-simplejwt==5.2.2 drf-yasg==1.21.4 et-xmlfile==1.1.0 gunicorn==20.1.0 h2==4.1.0 hpack==4.0.0 hyperframe==6.0.1 hyperlink==21.0.0 idna==3.4 incremental==22.10.0 inflection==0.5.1 itypes==1.2.0 jdatetime==4.1.0 Jinja2==3.1.2 kombu==5.2.4 lxml==4.9.1 MarkupSafe==2.1.1 msgpack==1.0.4 multitasking==0.0.11 numpy==1.23.3 openpyxl==3.0.10 packaging==21.3 pandas==1.5.0 pandas-datareader==0.10.0 Pillow==9.2.0 priority==1.3.0 prompt-toolkit==3.0.31 psutil==5.9.2 psycopg2==2.9.4 pyasn1==0.4.8 pyasn1-modules==0.2.8 pycparser==2.21 PyJWT==2.6.0 pyOpenSSL==22.1.0 pyparsing==3.0.9 python-crontab==2.6.0 python-dateutil==2.8.2 python-dotenv==0.21.0 pytz==2022.4 redis==4.3.4 requests==2.28.1 ruamel.yaml==0.17.21 ruamel.yaml.clib==0.2.7 service-identity==21.1.0 simplejson==3.17.6 six==1.16.0 soupsieve==2.3.2.post1 sqlparse==0.4.3 Twisted==22.10.0 txaio==22.2.1 typing_extensions==4.4.0 tzdata==2022.5 Unidecode==1.3.6 uritemplate==4.1.1 urllib3==1.26.12 vine==5.0.0 wcwidth==0.2.5 wrapt==1.14.1 yfinance==0.1.74 zope.interface==5.5.1 I did download packages with: pip download -r requirements.txt and after copy all `.whl files to traget computer, I did run this code: pip install --no-index --find-links ~/LocalPythonPackage -r requirements.txt But I got this error: ERROR: Could not find a version that satisfies the requirement MarkupSafe==2.1.1 (from versions: none) ERROR: No matching distribution found for MarkupSafe==2.1.1 I use python3.11 and Ubuntu 20.04.5 LTS in both computers. I think that, this problem is for dependencies or different in OS. Can … -
clean method not called in modelform
As written in the title, the form gets validated whatever happens, I don't understand why are my clean and clean_ methods are not called. Used forms for quite some time but here I am puzzled on what I am forgetting. Thanks simplified forms.py class ProfileForm(forms.ModelForm): class Meta: model = Profile fields = ["workcity", "post_address", "billing_address", "country", "phone"] def clean(self): #not called cleaned_data = super().clean() billing_address = cleaned_data.get('billing_address') post_address= cleaned_data.get('post_adress') if not billing_address == post_address: do some raising validation error def clean_workcity(self, *args, **kwargs): #not called workcity= self.cleaned_data.get("workcity") if xxx: do some raising validation error return workcity simplified views.py def profileform(request): if request.method =='POST': form = ProfileForm(request.POST) if form.is_valid(): form.instance.user = request.user form.save() messages.success(request, 'Profile created successfully') return redirect('profile') else : handle errors else: form = ProfileForm() return render(request, "CORE/home.html", {"form": form}) -
model form not rendering in django template
My models.py and this is my model for photos. # home photo page class Photos(models.Model): photo_title = models.CharField(max_length=50, blank=False) photo_description = models.CharField(max_length=50, blank=False) photo_date = models.DateField(blank=False) photo_location = models.CharField(max_length=50, blank=False) photo_file = models.FileField(upload_to='photos', blank=False) def __str__(self): return self.photo_title My forms.py this is the model form I made to render it as a form. class UploadPhotosForm(forms.Form): class Meta: model = Photos fields = '__all__' my views.py these are my relavent imports and section I coded in view file. from .forms import CampForm, ProjectForm, HikeForm, UploadPostsForm, UploadPhotosForm posts = UploadPostsForm() photo = UploadPhotosForm() print(photo.as_p()) context = { 'title': 'manage_wall', 'posts': posts, 'photo': photo, } return render(request, 'manager/manage_wall.html', context) My template {% block content %} <div class="container"> <div class="row"> <div class="col"> <form action="" method="post"> {% csrf_token %} {{photo.as_p}} <input type="submit" value="Add"> </form> </div> <div class="col"> <form action="" method="post"> {% csrf_token %} {{posts.as_p}} <input type="submit" value=" Add"> </form> </div> </div> </div> {%endblock %} As you can see here my photoForm is not rendering in the frontend can someone point out the mistake I have made not to render that form only while other forms are successfully rendering in the frontend. My Question is all other model forms rendered successfully why this is not displaying … -
404 Not Found Nginx Error After SFTP Changes via FireZilla
I just updated my site's (Django; deployed via AWS Lightsail) files via FileZilla but my website won't load now, giving me a 404 error. I've done some research and they're telling me it is an error with Nginx's conf file, but I'm not sure how I should change it to resolve the issue. Here is the conf file: GNU nano 3.2 nginx.conf user www-data; worker_processes auto; pid /run/nginx.pid; include /etc/nginx/modules-enabled/*.conf; events { worker_connections 768; # multi_accept on; } http { ## # Basic Settings ## sendfile on; tcp_nopush on; tcp_nodelay on; keepalive_timeout 65; types_hash_max_size 2048; # server_tokens off; # server_names_hash_bucket_size 64; # server_name_in_redirect off; include /etc/nginx/mime.types; default_type application/octet-stream; I've attempted to return to a previous snapshot (that used to function) by creating a new instance, but when I try to load the backup via its public IP it seems to still give me a 404. -
Django / ListView / Use get_context_data to count all keys in a json variable
I would like to return in my Link.html the number of links contain in allLinks variable (json) So far I guess I misunderstand the use of get_context_data and how to pass to context['CountLink'] the total count of links. With the current code , I got : Liste des recherches terre : <QuerySet [<Post: terre>, <Post: océan>]> Links océan : <QuerySet [<Post: terre>, <Post: océan>]> Links Models.py class Post(models.Model): title = models.CharField(max_length=255) url = models.URLField(max_length=255) allLinks = models.JSONField() def __str__(self): return self.title views.py class LinkView(ListView): model = Post template_name = 'link.html' def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) context['CountLink'] = Post.objects.all() return context Link.html {% for post in object_list %} <li> <a href="{% url 'DetailLink' post.pk %}">{{ post.title }}</a> : {{CountLink}} Links </li> {% endfor %} -
Trouble with importing Django import-export library
I've tried to import Django's import-export library as specified in the documentation. It seems that it has been installed correctly in my venv: asgiref==3.5.2 defusedxml==0.7.1 diff-match-patch==20200713 Django==4.1.4 django-import-export==3.0.2 et-xmlfile==1.1.0 import-export==0.3.1 MarkupPy==1.14 numpy==1.23.5 odfpy==1.4.1 openpyxl==3.0.10 pandas==1.5.2 python-dateutil==2.8.2 pytz==2022.7 PyYAML==6.0 six==1.16.0 sqlparse==0.4.3 tablib==3.3.0 tzdata==2022.7 xlrd==2.0.1 xlwt==1.3.0 I've also added it to my installed apps in settings.py: INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'app.apps.AppConfig', 'django.conf' 'import_export', ] But still, when I'm trying to import it in my app's admin.py file, it doesn't work: What else could go wrong? The project itself as for now doesn't really include almost any code. I've tried re-installing the library in my venv, double checked it if it's there, but that didn't solve the problem I'm struggling to find any solutions I could apply, since almost all of the tutorials and answers only include the two setup steps I've mentioned and done -
Django: accessing the related_name on a Model returns None
models.py from django.contrib.auth.models import AbstractUser from django.db import models class User(AbstractUser): pass class Likes(models.Model): pass class Unlikes(models.Model): pass class Post(models.Model): post_text = models.TextField(max_length=1000) user = models.ForeignKey(User, on_delete=models.CASCADE, related_name='posts') created_at = models.DateTimeField(auto_now_add=True) updated_at = models.DateTimeField(auto_now=True) likes = models.ManyToManyField(User, null=True, related_name="liked_posts") unlikes = models.ManyToManyField(User, null=True, related_name="unliked_posts") def __str__(self): return f'{self.user} at {self.created_at}: {self.post_text[0:20]}...' views.py def profile(request, username): print(User.objects.get(username=username).posts) print(Post.objects.filter(user = User.objects.get(username=username))) return render(request, 'network/profile.html', { 'user': request.user, 'profile': User.objects.get(username=username) }) My models.py file defines the relationship between User and post as follows: user = models.ForeignKey(User, on_delete=models.CASCADE, related_name='posts') Running: print(User.objects.get(username=username).posts) print(Post.objects.filter(user = User.objects.get(username=username))) returns: network.Post.None <QuerySet [<Post: Joe at 2022-12-18 10:48:18.941880+00:00: test1...>, <Post: Joe at 2022-12-18 10:53:27.407349+00:00: test1...>, <Post: Joe at 2022-12-18 10:53:34.167508+00:00: test2...>]> My question: How can the first print statement return no rows, when the second statement returns the expected value (3 rows)? As far as I understand, the two statements should achieve the same thing? -
Docker Gulp based on Django Cookiecutter - node path errors
I have installed a Docker project based on Django Cookiecutter using Gulp. Runs perfectly. First thing I try to do is install my NPM package. They install and I can see them in the docker local_node. But I will get path error when running Docker Up. Cookiecutter comes installed Bootstrap. So I use that as an example. This Gulp code and my added NPM works fine in a normal Django project - so I know the address paths are fine for the node_modules. But in a Docker Up I get a bad path error. [12:14:12] Error: File not found with singular glob: /app/node_modules/tooltipster/dist/js/tooltipster.bundle.js (if this was purposeful, use `allowEmpty` option) prelim_local_node | at Glob.<anonymous> (/app/node_modules/glob-stream/readable.js:84:17) prelim_local_node | at Object.onceWrapper (node:events:628:26) prelim_local_node | at Glob.emit (node:events:513:28) prelim_local_node | at Glob.emit (node:domain:489:12) prelim_local_node | at Glob._finish (/app/node_modules/glob/glob.js:194:8) prelim_local_node | at done (/app/node_modules/glob/glob.js:179:14) Why do the preinstalled bootstrap npm packages work and my installed packaged create issues? Is there some special way to add a path for a Docker image? Docker will still run - just not with my packages. The gulpfile. tooltipster and parsleyjs do not work. The code will stop processing after the first error. // Relative paths function function pathsConfig(appName) … -
django pipeline FileNotFoundError when the path is right
I'm trying to add pipeline to my django project. But it's throwing me winerror 2 (FileNotFoundError) when I'm trying to execute collectstatic settings.py STATIC_URL = 'static/' STATICFILES_STORAGE = 'pipeline.storage.PipelineStorage' STATIC_ROOT = 'static' STATICFILES_FINDERS = ( 'django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder', 'pipeline.finders.PipelineFinder', ) PIPELINE = { 'PIPELINE_ENABLED': True, 'STYLE': { 'base': { 'source_filenames': ( 'css\\core\\header.css', 'css\\core\\reset.css', 'css\\core\\style.css' ), 'output_filename': 'css\\core\\base.css' }, } } ├───css │ ├───BRS │ │ journal.css │ │ journal.css.map │ │ journal.scss │ │ │ ├───core │ │ form.css │ │ header.css │ │ images.css │ │ intro.css │ │ reset.css │ │ start.css │ │ style.css │ │ table.css │ │ │ ├───Portfolio │ └───user │ user.css │ user.css.map │ user.scss I even changed the subprocess module to output the executable variable and I get None Tried to change the STATIC_ROOT variable to BASE_DIR / "static" but that didn't help Expected static files to be compressed -
Django logger not logging error in log file
Hi all I am facing issues with logging in django. It is not logging error in my django.log file. Following is the code I am using in views.py :- import logging logger = logging.getLogger(__name__) class SomeView(CreateAPIView): serializer_class = some_class queryset = models.model_name.objects def create(self, request, *args, **kwargs): try: some_code try: some_more_code except Exception as e: logger.error(e, exc_info=True) print(e) except: pass return 1 This works and inner block print error. Then in settings.py import logging LOGGING = { 'version': 1, 'disable_existing_loggers': False, 'formatters': { 'verbose': { 'format': '%(levelname)s %(asctime)s %(module)s %(process)d %(thread)d %(message)s' }, }, 'handlers': { 'file': { 'level': 'ERROR', 'class': 'logging.FileHandler', 'filename': 'django.log', 'formatter': 'verbose' }, 'console': { 'level': 'ERROR', 'class': 'logging.StreamHandler', 'formatter': 'verbose' }, }, 'loggers': { 'django': { 'handlers': ['file', 'console'], 'level': 'ERROR', 'propagate': True, }, }, } this creates a django.log file but I dont see errors in django.log files when i trigger error. Can anyone please guide me. I am using pycharm which shows log format not recognized i f that is of any help