Django community: RSS
This page, updated regularly, aggregates Django Q&A from the Django community.
-
Add 2Factor Authentication in r*set p***sword in Django python
i want to add PASSWORD RECOVERY/ RESET PASSWORD LINK SENT BY EMAIL FOR SUPER ADMIN. USING 2 STEPS AUTHENTICATION VERIFICATION 1- GENERATE A CODE BY SMS ON THE SUPER ADMIN PHONE and 2- USE AUTHENTICATOR APP ON THE SUPER ADMIN PHONE can someone guide me whole steps to start this including which packages are required??? -
Iterating through multiple lists in Django templates
views.py def exa(request): list1 = ["apple", "banana", "cherry"] list2 = [1, 5, 7] list3 = [True, False, False] context = { 'l1' : list1, 'l2' : list2, 'l3' : list3, } return render(request, 'patient_registration/111.html', context) template {%for a, b in zip(l1, l2)%} {{a}} {{b}} {%endfor%} template can be not show any list i want to display multipe list thorugh context in template -
how to replace thread_locals logic on async code?
at a django project, i have a lot of code that depends on thread_locals: middlewares using correlation ids, other logic depending on these middlewares, cached info about the request and so on. recently i started to mix sync code with async, and since i have a single thread serving the async part, i cannot use thread_locals anymore. since i'm using lots of sync_to_async and async_to_sync adapters, i cannot use context vars, because at the same request different coroutines are executed. what alternatives do i have to manage short lived information that is unique to each request? i thought about to store everything on a redis as cache, but again, how show i generate/retrieve the key from each request on several points through its execution? -
what should be correct logic for room booking sys.So that booked room should not show?
Creating a room booking sys.For that created a booking model.Now want to compare dates in that with the dates fetched from searchaventer image description hereailable page.To show if room is available or not. [booking model](https://i.stack.imgur.com[search available method](https://i.stack.imgur.com/YAfAh.jpg)/llEZA.jpg) type here -
\django_school\\manage.py': [Errno 2] No such file or directory
i downloaded pip and django with python -m pip install django, i also downloaded crycrs_forms but when i click to python manage.py runserver it crashes and doesn't run enter image description here how can i fix it,guy :(( -
Django not releasing memory
Based on other posts I understand Django doesn't have a memory leak issue but I have a web application where when I specific routine is called, a lot of memory is getting used but not all of it is freed up afterwards. I don't know if that is the correctly terminology but if I track the mem_used_perc on AWS while only calling this routine on the webpage I see the memory usage increase and not return to previous levels. It is a recursive routine that I call which can iterate up to 7 times. This is the code: def autosearch(self, phase=1, report="", num = 10): """ This is an ES search following specific rules to identify and populate the lead notifications """ if phase == 1: self.referred_to.clear() if self.no_of_providers: num = self.no_of_providers else: num = 10 sqs = OrganisationDocument.search() service_type = None # filter by care type if self.type_of_care_care_home: service_type = "service_care_home" elif self.type_of_care_home_care: service_type = "service_home_care" elif self.type_of_care_live_in_care: service_type = "service_live_in_care" elif self.type_of_care_retirement_village: service_type = "service_retirement_village" if service_type == "service_retirement_village": sqs = sqs.query(Q("multi_match", query=True, fields=service_type)) elif service_type: sqs = sqs.query( Q("multi_match", query=True, fields=service_type) & Q("match", care_over_65=True) ) else: sqs = sqs.query(Q("match", care_over_65=True)) if self.budget_type: ranges = self.filter_by_budget_range(phase) sqs = … -
Django - Getting Related objects
There are such models: class Nomenclature(models.Model): nameNom = models.CharField(max_length=150,verbose_name = "Название номеклатуры") numNom = models.CharField(max_length=50,verbose_name = "Номер номеклатуры",unique=True) quantity = models.IntegerField(verbose_name="Количество", default=0) numPolk = models.CharField(max_length=150,verbose_name = "Номер полки/места" class Changes(models.Model): numNomenclature = models.ForeignKey(Nomenclature, on_delete=models.CASCADE,related_name="chamges",verbose_name="Номер номеклатуры") quantity = models.IntegerField(verbose_name="Количество",null=True) location = models.CharField(max_length=50,verbose_name = "Место установки") fullname = models.CharField(max_length=150,verbose_name = "ФИО") appointment = models.CharField(max_length=50,verbose_name = "Назначение") created_at = models.DateTimeField(auto_now_add=True,verbose_name='Дата/время', null=True) It is necessary to output the name and number of the nomenclature and all related changes to the template, and also output all fields I found that select_related exists, but I thought that it doesn't work the way I need it to. -
python connect to database and select table in json format
In django project, I connected to databse and wrote "select * from table" to display result in json format, I used for cycle for this, it is working ok, but when there are millions or over millions rows, get request is taking long time and eventually it is stopping without result. Is there any alternative way to proccess this code without using for cycle, since for cycle takes very long time if there are bulk of rows in select query I did all proccesses in urls.py in django project urls.py from django.urls import path from hdbcli import dbapi from django.http import HttpResponse, JsonResponse import json def get_all_users(request): conn = dbapi.connect(address="localhost", port="xxx", user="xxxx", password="xxxx") cursor = conn.cursor() cursor.execute("select bname, name_text, function, department from user_addrs") objs = cursor.fetchall() json_data = [] for obj in objs: json_data.append({ "login" : obj[0], "full_name" : obj[1], "function" : obj[2], "department" : obj[3] }) return JsonResponse(json_data, safe=False) urlpatterns = [ path('test/', get_all_users), ] in browser, result is like this in cmd, print shows like this can anyone help me please to solve this problem, I need a code that returns json response faster even if there bulk of rows in select query thanks -
how to show avaliable sizes of clothes on the form? Django
I'm developing online clothing store on Django. Now I faced the issue: I have a form which helps user to add to his cart some clothes. I need to show which sizes of this clothes are avaliable. To do this, I need to refer to the database. But how to do it from the form? my form: forms.py from django import forms PRODUCT_QUANTITY_CHOICES = [(i, str(i)) for i in range(1, 21)] class CartAddProductForm(forms.Form): quantity = forms.TypedChoiceField(choices=PRODUCT_QUANTITY_CHOICES, coerce=int) update = forms.BooleanField(required=False, initial=False, widget=forms.HiddenInput) # size = ?? the view which uses this form: views.py def product_detail(request: WSGIRequest, product_id: int, product_slug: str) -> HttpResponse: product = get_object_or_404(Product, id=product_id, slug=product_slug, available=True) cart_product_form = CartAddProductForm() return render(request, 'shop/product/detail.html', {'product': product, 'cart_product_form': cart_product_form}) shop/product/detail.html: {% extends "shop/base.html" %} <head> <meta charset="UTF-8"> <title>Detail</title> </head> <body> {% block content %} <br> <b>{{ product.name }} </b> <br> <i>{{ product.description }} </i> <br> {{ product.price }} <br> <img src="{{ product.image.url }}" width="300" height="500"> <br> Available sizes: <br> {{ product.sizes }}<br> <form action="{% url "cart:add_to_cart" product.id %}" method="post"> {{ cart_product_form }} {% csrf_token %} <input type="submit" value="Add to cart"> </form> {% endblock %} </body> I tried to create a function which gets avaliable sizes and send to the form: forms.py … -
CSRF verification failed. Request aborted error in django but csrf_token is added in forms
so my application is working fine on local but in production its giving me this error **Forbidden (403) CSRF verification failed. Request aborted. More information is available with DEBUG=True.** i already added this in settings.py CSRF_TRUSTED_ORIGINS = ['https://domainname.com', 'https://www.domainname.com'] -
Get queryset with only selecting one object in related to foreign key
I have a model named Answer class Answer(models.Model): survey = models.ForeignKey(Survey) I want to return a queryset of Answer according to Survey foreign Key, Means if there are 3 objects , answers = [ {"survey": 1}, {"survey": 2}, {"survey": 1}, ] then queryset should return [ {"survey": 2}, {"survey": 1}, ] Means that will check if there is Answer with a foreign key then it should not select other Answer with same foreignkey. So how to do that. I'm doing this for django admin page. super().get_queryset(request).filter( # filters ) -
OperationalError in django when adding a new record
I have created a mysql database with Cpanel . And I have some settings for database in the settings.py : DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': '*****_db', 'USER': '******', 'PASSWORD': '********', 'HOST': 'localhost', 'PORT': '3306', 'OPTIONS': { 'init_command': 'SET storage_engine=INNODB,character_set_connection=utf8,collation_connection=utf8_unicode_ci' } } } but the problem is when I try to add a new record in django-admin with some arabic chars , I get this error : OperationalError at /admin/courses/arguments/add/ (1366, "Incorrect string value: '\\xD8\\xB3\\xDA\\xAF' for column `asiatrad_db`.`courses_arguments`.`name` at row 1") What is the problem ? Do I need to create a new database with charset on utf-8 ? -
How to show documents uploaded by specific users only in django?
I'm a newcomer to django and I'm trying to create a user system where different users can log in and upload and view their documents. The upload and viewing works except users are able to see each others documents as well. How can I make it so that users are only able to see documents uploaded by them? The following question also talk about the same problem but I'm unable to understand how the issue was fixed: How to show user posted blog in user profile page as a my post list section in Django 3? I realize I've to use foreign keys in my models but I'm not sure how to implement it. Here's snippets of my code so far: Document Model for upload with user foreign key class Document(models.Model): user = models.ForeignKey(User, default = 1, null = True, on_delete = models.SET_NULL) docfile = models.FileField(upload_to='documents/%Y/%m/%d') User model class User(models.Model): name = models.CharField(max_length=255) author = models.ForeignKey(User, default = 1, null = True, on_delete = models.SET_NULL) id = models.IntegerField(primary_key=True) email = models.EmailField(max_length=500, unique=True) username = models.CharField(max_length=255, unique=True) password = models.CharField(max_length=255) document function in views.py def my_view(request): print(f"Great! You're using Python 3.6+. If you fail here, use the right version.") message = … -
Apache/Django/cx_oracle raises 500 error when we switch one of the DB node from oracle RAC server
I deployed a Django/Python application at Apache server. Application is connected with Oracle RAC (Real Application Cluster) 19C DB server, having 2 nodes. I am using cx-Oracle==8.2.1. So the issue is, when we switch one of the node e.g make the one node up and other down the application starts giving 500 errors without any description. Here is my DB settings DATABASES = { 'default': { 'ENGINE': 'django.db.backends.oracle', 'NAME': 'myrac.xxxxx.com/dbname:1111', 'USER': 'usr', 'PASSWORD': 'xxxxxxxx', 'TIME_ZONE': 'Asia/Karachi', } } -
why does this function download an entire web page?
views.py def download_file(request,path): file_path=os.path.join(settings.MEDIA_ROOT,path) if os.path.exists(file_path): with open(file_path, 'rb') as enm: response=HttpResponse(enm.read(),content_type="application/adminupload") response['Content-Disposition']='Inline;filename='+os.path.basename(file_path) return response template index.html <div> {% for post in file %} <h2>{{post.title}}</h2> <a href="{{post.admin.upload.url}}" class="home__button anime-text" download="{{post.admin.upload.url}}">DOWNLOAD CV</a> {% endfor %} </div> urls.py re_path(r'^download/(?P<path>.*)$',serve,{'document_root':settings.MEDIA_ROOT}), I am trying to download a pdf file when i hit download, the function downloads the webpage and saves it with an extension of (.htm) -
How can i use variable of a function inside another function?
I want to use value of i in test function from index function variable i This is index function def index(request): global i if request.method == "POST": form = InputForm(request.POST) if form.is_valid(): form.save() try: ids = form.cleaned_data['git_Id'] print(ids) obj = sql() query = f""" SELECT request_id FROM request_form_db.request_form_mymodel where git_Id= '{ids}' ; """ print(query) p = obj.fetch_query(query) print("Query Result", p) for i in p: print("Result[0] : ", i[0]) print("Result : ", p) i = i[0] approve_url = f"http://127.0.0.1:8000/form/test?request_id={i}" print("Url : ", approve_url) try: send_mail( 'KSA Test Activation', approve_url, 'Noreplygcontrol@airlinq.com', ['sorav.parmar@airlinq.com'], fail_silently=False, ) except Exception as e: print("Error : ", e) except Exception as e: print("Error : ", e) form = InputForm() else: form = InputForm() return render(request, 'home.html', {'form': form}) Below is test function where i want to use value of i that i got from sql queries results def test(request): global i if request.method == "POST": form = TestForm(request.POST) if form.is_valid(): print("Form is Valid") selected = form.cleaned_data.get('myfield') print(selected) else: print(i) # Here i got error NameError: name 'i' is not defined rq = request_id["request_id"] s = sql() query = f"""update request_form_db.request_form_mymodel set is_approved=1 where request_id = '{rq}' """ print(query) s.update_query(query) print("Updated Successfully") else: form = TestForm() return render(request, 'test.html', … -
How to filter the dates based on range for datetime in django
views.py def index(request): if request.method == "POST": from_date = request.POST.get("from_date") f_date = datetime.datetime.strptime(from_date,'%Y-%m-%d') print(f_date) to_date = request.POST.get("to_date") t_date = datetime.datetime.strptime(to_date, '%Y-%m-%d') print(t_date) global get_records_by_date get_records_by_date = Scrapper.objects.all().filter(Q(start_time__range=f_date),Q(end_time__range=t_date)) print(get_records_by_date) I need to get the dates from the range start time and end time based on datetime field. When I run the script its showing TypeError at / 'datetime.datetime' object is not iterable. Is there any solution for particular issue -
Why is it not redirected when the payment is successful? using django and braintree dropin-ui
I use this sandbox for the payment section of the store site. I want to redirect the user to page Done after successful payment, but the current page is loaded again! pealse help payment_process view: Done.html {% extends "shop/base.html" %} {% block title %} Pay by credit card {% endblock %} {% block sidenavigation %} {% endblock %} {% block content %} <h1>Pay by credit card</h1> <!-- includes the Braintree JS client SDK --> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.1/jquery.min.js"></script> <script src="https://js.braintreegateway.com/web/dropin/1.14.1/js/dropin.min.js"></script> <form method="post" autocomplete="off"> {% if braintree_error %} <div class="alert alert-danger fade in"> <button class="close" data-dismiss="alert">&times;</button> {{ braintree_error|safe }} </div> {% endif %} <div class="braintree-notifications"></div> <div id="braintree-dropin"></div> <input style="background-color: #0783ca" id="submit-button" class="btn btn-success btn-lg btn-block" type="button" value="Pay now!"/> </form> <script> var braintree_client_token = "{{ client_token}}"; var button = document.querySelector('#submit-button'); braintree.dropin.create({ authorization: "{{client_token}}", container: '#braintree-dropin', card: { cardholderName: { required: false } } }, function (createErr, instance) { button.addEventListener('click', function () { instance.requestPaymentMethod(function (err, payload) { $.ajax({ type: 'POST', url: '{% url "payment:process" %}', data: { 'paymentMethodNonce': payload.nonce, 'csrfmiddlewaretoken': '{{ csrf_token }}' }, }).done(function (result) { //do accordingly }); }); }); }); </script> {% endblock %} befor payment: after payment: -
【Django rest framework】"Authentication credentials were not provided" with dj-rest-auth, all-auth and simplejwt
I've been struggling for over a week with this issue. This is definitely an authentication problem. I implemented social google login with dj-rest-autj, all-auth and simple JWT. Credential flow is, first, getting access_token from google which is done in frontend. Second, sendind a request to an endpoint 'api/user-google' with the access_token, which returns JWT access_token and refresh_token, which is working fine. Finally sending a request to get user detail, but returned the error message. Here is the request to get user detail. await axios.get( `/api/user/${UID}`,{ withCredentials: true, headers: { "Authorization": 'JWT ' + `${access_token}`, "Content-Type":"aplication/json" } }) below are relevant source codes. settings.py INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'user', 'rest_framework.authtoken', 'django.contrib.sites', 'dj_rest_auth', 'dj_rest_auth.registration', 'allauth', 'allauth.account', 'allauth.socialaccount', 'allauth.socialaccount.providers.google', 'rest_framework', 'rest_framework.authtoken' ] # allauth google provisder config SOCIALACCOUNT_PROVIDER = { 'google': { 'SCOPE': [ 'profile', 'email' ], 'AUTH_PARAMS': { 'access_type': 'online' }, } } SOCIALACCOUNT_EMAIL_VARIFICATION = 'none' SOCIALACCOUNT_EMAIL_REQUIRED = False # dj-rest-auth config SITE_ID = 1 JWT_AUTH_SECURE = True REST_USE_JWT = True REST_AUTH_SERIALIZER = { 'USER_DETAILS_SERIALIZER' :'user.serializers.UserSerializer', } JWT_AUTH_COOKIE = 'access_token' JWT_AUTH_REFRESH_COOKIE = 'refresh-token' # auth user model confi AUTH_USER_MODEL = 'user.User' # simple_JWT config SIMPLE_JWT = { 'AUTH_HEADER_TYPES': ('JWT'), 'ACCESS_TOKEN_LIFETIME': timedelta(days=7), 'ROTATE_REFRESH_TOKENS' : True, 'BLACKLIST_AFTER_ROTATION': True, 'UPDATE_LAST_LOGIN': … -
EC2 AWS debugging, How to?
So I've been trying to set up a pipeline with Github, Elastic Beanstalk and Django. It looks like I've managed to run the migrations commands and fix all the bugs prior to this stage. As I was getting error messages in the full logs. I'm now where the pipeline run successfully and commands have been executed and everything looks fine, beside my server not running and I do not get any clear error messages beside. ERROR : Following services are not running: web. This commands have been executed : #!/bin/sh source /var/app/venv/staging-LQM1lest/bin/activate python /var/app/current/manage.py migrate python /var/app/current/manage.py collectstatic --noinput My config : packages: yum: amazon-linux-extras: [] git: [] commands: 01_postgres_activate: command: sudo amazon-linux-extras enable postgresql11 02_postgres_install: command: amazon-linux-extras install postgresql11 More config : option_settings: "aws:elasticbeanstalk:application:environment": DJANGO_SETTINGS_MODULE: project.settings "PYTHONPATH": "/opt/python/current/:$PYTHONPATH" "aws:elasticbeanstalk:container:python": WSGIPath: project.wsgi:application NumProcesses: 3 NumThreads: 20 "aws:elasticbeanstalk:environment:proxy:staticfiles": /html: statichtml /static-files: static-files /media: media-files container_commands: 10_deploy_hook_permissions: command: | sudo find backend/.platform/ -type f -iname "*.sh" -exec chmod -R 755 {} \; sudo find /var/app/staging/backend/.platform/ -type f -iname "*.sh" -exec chmod -R 755 {} \; Now my question is, is that an issue with opening ports ? I've also tried to run python manage.py runserver here but nothing happens NOTE : when … -
How to Use Ready Made Custom Forms in Django
So, I am in the process of learning Django. And creating a simple RSS app. I need a login/registration form. I found this pretty looking form on Codepen and I want to use it. Slide Login and Signup Form It uses a lot of DIVs with classes and is confusing me on how to write the form template for this. Also, would be possible to use the same URL for registration as well as login. Suppose this myapp/login Both login and registration will use POST requests and what would be the best way to differentiate them? to identify whether an event is user registration or login. Need help for this, thanks. I don't really need code... if anyone can just explain this that'd be great. -
Django include tag is displayed in browser not the actual include
I am trying to seperate a navbar in an extra file and import/include it into my base template. The problem is {% include 'sidebar.html %} is just displayed in the browser and does not work as I think it would... Folder structur |-project |-static |-css |-js |-templates |-base.html |-sidebar.html |- static |- ... |-app0 |-templates |-home.html |-... |-manage.py src/project/templates/base.html <html> <head> {% load static %} <link rel="stylesheet" href="{% static 'css/style.css' %}"> <title>Profile</title> </head> <body> {% include 'sidebar.html' %} {% block content %} {% endblock content %} </body> </html> src/project/templates/sidebar.html <div class="sidebar"> <a href="/"> Home</a> <h3>Headline0</h3> <a href="/test0">Test0</a> <h3>Headline 1</h3> <a href="/test1">Test1</a> </div> src/app0/templates/home.html {% extends "base.html" %} {% load static %} {% block content %} Hi <span id="name"></span> <div id="counter"></div> <script src="{% static 'js/index.js' %}" charset="UTF-8"></script> {% endblock %} Browser output: Does have anyone some ideas about it? -
How to set a foreignkey field in views
I'm trying to save the customer field on the Test model, I'm not getting any errors but it's not saving the field either, how do I fix it? Models class Test(models.Model): customer = models.ForeignKey(Customer, on_delete=models.SET_NULL, blank=True, null=True) email = models.EmailField(max_length=200, blank=False) Forms class TestForm(forms.Form): email = forms.EmailField(required=True) class Meta: model = Test fields = ("email") def save(self, commit=False): # Creating the customer object Test.objects.create(email=self.cleaned_data['email']) Views def test_view(request): customer = request.user.customer if form.is_valid(): email = form.cleaned_data['email'] customer = customer form.save() -
"detail": "CSRF Failed: CCSRF token missing." when sending post data from angular 13 to django connected database
i need to send the post data from angular to DRF through angular form but geeting the error i checked almost all the answers available on the internet but did not found and useful answer. "detail": "CSRF Failed: CSRF token missing." //post logic sources.service.ts import { Injectable } from '@angular/core'; import { sources } from './sources'; import { HttpClient } from '@angular/common/http'; import { Observable , of, throwError } from 'rxjs'; import { catchError, retry } from 'rxjs/operators'; import { HttpHeaders } from '@angular/common/http'; const httpOptions = { headers: new HttpHeaders({ 'Content-Type': 'application/json', // Authorization: 'my-auth-token', cookieName: 'csrftoken', headerName: 'X-CSRFToken', // X-CSRFToken: 'sjd8q2x8vs1GJcOOcgnVGEkdP8f02shB', // headerName: 'X-CSRFToken', // headerName: , }) }; @Injectable({ providedIn: 'root' }) export class SourcesService { API_URL = 'http://127.0.0.1:8000/sourceapi.api'; constructor(private http: HttpClient) { } /** GET sources from the server */ Sources() : Observable<sources[]> { return this.http.get<sources[]>(this.API_URL); } /** POST: add a new source to the server */ // addSource(data: object) : Observable<object>{ // return this.http.post<object>(this.API_URL,data, httpOptions); // } addSource(source : sources[]): Observable<sources[]>{ return this.http.post<sources[]> (this.API_URL, source, httpOptions); //console.log(user); } } //add-source.component.ts import { Component, OnInit } from '@angular/core'; import { sources } from '../sources'; import { SourcesService } from '../sources.service'; import { FormGroup, FormControl, ReactiveFormsModule} from … -
how to set attributes in html datepicker input in django
i want to use the html input date in a django forms. I already have done that. forms.py class DateInputPicker(forms.DateInput): input_type = 'date' class Form(forms.Form): date = forms.DateField( widget=DateInputPicker, label='Date') But i want to add attributes like min, max and set a default value. How can i do that? Thanks!