Django community: RSS
This page, updated regularly, aggregates Django Q&A from the Django community.
-
Django PWA - Periodic Background Sync
I have a django application (not yet PWA) in which I got asked to implement a feature that makes the app upload the users location to an API. This is because the app is used for truck operators. The client wants to be able to follow where the truck is. To monitor if all scheduled deliveries can be succeeded that day. My question: Is it possible to somehow make a background task that, even when the user is not using the app (its closed or not focussed), sends its location to the API? What technologies should I be using for this? I have already looked into a lot of technologies (that for me are very new). Just as PWA (service workers), workers, periodic-background-sync-api, background-sync-api,... But I am getting lost in all the information that there exists. -
Cannot get metadata (current-total) from state/info of celery task after calling update_state
I am building a web application with Django. I need to display a progress bar. To track the progress inside a celery task I am passing an ajax call to the backend containing information needed for the process and another one with a timeout to keep watching for progress of the celery task. I can not understand what I am doing wrong, but I cannot get back the information regarding the information I stored in the 'meta' of the update_state. Following relevant part of code. tasks.py @shared_task def myFunction(): current_task.update_state(state='PROGRESS', meta={'current':0, 'total':100}) . do stuff . current_task.update_state(state='PROGRESS', meta={'current':25, 'total':100}) . do stuff . current_task.update_state(state='PROGRESS', meta={'current':50, 'total':100}) . do stuff . current_task.update_state(state='PROGRESS', meta={'current':75, 'total':100}) . do stuff . current_task.update_state(state='PROGRESS', meta={'current':100, 'total':100}) return result views.py def view(): ****GET PART**** if 'processing' in request.POST: result = myFunction.delay() request.session['id'] = result.id result_out = result.get() return JsonResponse() elif 'checkstate' in request.POST: proc_id = request.session['id'] task = AsyncResult(proc_id) return JsonResponse({'state':task.state, 'info':task.info}) -
How to get the text of a template without parsing the template?
Imagine I have a template that uses a custom template tag. During the processing of the template tag, I discover a problem I could help the user solve. I want to provide a pointer to where the error happened (and what they need to do to solve the problem). How do I get the template text and the current position (line) in the template file? (in a way that doesn't re-parse the template, since that would cause the error to be detected again recursively..) -
Filter queryset with same DateTime fields
I'm trying to filter a queryset with the same DateTime fields: objects = Obj.objects.filter(start_date_time=F('end_date_time')) objects <QuerySet []> models.py: start_date_time = models.DateTimeField(default=now, blank=True) end_date_time = models.DateTimeField(default=now, blank=True) If I remove microseconds, then the fields are equal: obj = Obj.objects.filter(id='id').first() obj.start_date_time datetime.datetime(2023, 3, 10, 9, 24, 29, 326238, tzinfo=<UTC>) obj.end_date_time datetime.datetime(2023, 3, 10, 9, 24, 29, 326241, tzinfo=<UTC>) obj.start_date_time == obj.end_date_time False obj.start_date_time.replace(microsecond=0) == obj.end_date_time.replace(microsecond=0) True How to make a request to the database correctly? -
How do i pass a QR value from javascript to my python view function in Django
I have created a QR scanner using html and javascript using instascan.min.js as shown in the code below. Currently, I am able to scan and see the content of the QR code displayed on the website but I am not sure how I can POST the QR code output {scan.content} . The QR value is passed into {scan.content} in the html. I want to post it to the python function: doctor_qrscan in view_doctor.py so that it can be written into the database Any help is greatly appreciated! The following are the relevant codes: {% block mainbody %} {% verbatim %} <div id="app2" class="container"> <head> <title>Instascan &ndash; Demo</title> <link rel="icon" type="image/png" href="favicon.png"> <!--<link rel="stylesheet" href="../static/css/style.css">--> <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/webrtc-adapter/3.3.3/adapter.min.js"></script> <script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.1.10/vue.min.js"></script> <script type="text/javascript" src="https://rawgit.com/schmich/instascan-builds/master/instascan.min.js"></script> </head> <body> <div id="app"> <div class="sidebar"> <section class="cameras"> <h2>Cameras</h2> <ul> <li v-if="cameras.length === 0" class="empty">No cameras found</li> <li v-for="camera in cameras"> <span v-if="camera.id == activeCameraId" :title="formatName(camera.name)" class="active">{{ formatName(camera.name) }}</span> <span v-if="camera.id != activeCameraId" :title="formatName(camera.name)"> <a @click.stop="selectCamera(camera)">{{ formatName(camera.name) }}</a> </span> </li> </ul> </section> <section class="scans"> <h2>Scans</h2> <ul v-if="scans.length === 0"> <li class="empty">No scans yet</li> </ul> <transition-group name="scans" tag="ul"> <li v-for="scan in scans" :key="scan.date" :title="scan.content">{{ scan.content }}</li> </transition-group> </section> </div> <div class="preview-container"> <video id="preview"></video> </div> </div> </body> </div> {% … -
Cannot connect to Django admin in Docker environment
I am building a Django app with Nginx in Docker. I have been able to visit the app in the localhost i.e. 127.0.0.1 however the admin page 127.0.0.1/admin is unreachable. I have this directory: . └── project/ ├── nginx/ │ ├── default.conf │ └── Dockerfile ├── sinag_api/ │ ├── sinag_api/ │ │ ├── ... │ │ └── settings.py │ ├── manage.py │ ├── Dockerfile │ └── entrypoint.sh ├── docker-compose.yml └── .development.env I only have a simple docker-compose file version: "3.9" services: sinag_api: container_name: sinag_api build: dockerfile: ./sinag_api/Dockerfile volumes: - static:/static ports: - "8000:8000" env_file: - .development.env nginx: container_name: nginx build: dockerfile: ./nginx/Dockerfile volumes: - static:/static ports: - "80:80" depends_on: - sinag_api volumes: static: My Django app is clean from scratch. I only added the STATIC_ROOT config to serve the static files. # settings.py STATIC_URL = "/static/" STATIC_ROOT = "/static/" Content of my nginx config is pretty basic. upstream api { server sinag_api:8000; } server { listen 80; location / { proxy_pass http://api; } location /static/ { alias /static/; } } My Django entrypoint is also just basic. #!/bin/sh python manage.py migrate --no-input python manage.py collectstatic --no-input gunicorn sinag_api.wsgi:application --bind 0.0.0.0:8000 How can I debug the pages in Docker? I have … -
Datatables server-side processing Django
I am trying to get datatables server-side processing to work with a Django backend. I have the following code: views.py to load HTML: def clients(request): path = '/path/to/csv/file.csv' date_time = os.path.getmtime(path) date = datetime.datetime.fromtimestamp(date_time) html_template = loader.get_template( 'XXXX/clients.html' ) return HttpResponse(html_template.render({"date":date,},request)) HTML table code: <table id="table" class="table table-striped"> <thead style="white-space: nowrap;"> <tr> <th>Network</th> <th>Description</th> <th>IP</th> <th>Mac</th> <th>Manufacturer</th> <th>Operating system</th> <th>Conntect to device</th> <th>VLAN</th> <th>Switchport</th> <th>Status</th> </tr> </thead> <tbody style="white-space: nowrap;"> </tbody> </table> Javascript in the same HTML file as the table code: <script> $( document ).ready(function() { $("#table").DataTable({ "processing": true, "serverSide": true, "scrollX":true, "ajax" :{url:'{% url "json_response" %}',dataSrc:"data"}, }); }); </script> views.py to get data from url 'json_response': def json_response(request): draw = int(request.GET.get('draw')) length = int(request.GET.get('length')) start = int(request.GET.get('start')) substring = str(request.GET.get('search[value]')) if start == 0: start == 0 else: length = start + length path = '/XX/XX/XXX/XXX.csv' clients = pd.read_csv(path) recordsTotal=len(clients) clients = clients.rename(columns={"Client description":"client_descr","Client IP":"client_ip","Client MAC":"client_mac","Client Manufacturer":"client_man","Client OS":"client_os","Connected to device":"connected_to",}) clients['VLAN'] = clients['VLAN'].fillna(0) clients['Switchport'] = clients['Switchport'].fillna(0) clients['client_man'] = clients['client_man'].fillna('Unknown') clients['client_os'] = clients['client_os'].fillna('Unknown') clients = clients.astype({"VLAN":int}) clients = clients.astype({"Switchport":str}) clients = clients.fillna('None') clients = clients.iloc[start:length] clients = clients.values.tolist() page = 1 per_page = 25 response = { "draw":draw, "recordsTotal": recordsTotal, "recordsFiltered":recordsTotal, "data":clients, } clients = JsonResponse(response,safe=False) return clients With … -
Django: Running inspectdb command produces ImportError: cannot import name 'NoArgsCommand'
What I am currently trying to achieve is to map the database that I have in sqlite3 to Django (version 4.1) models. I have tried using inspectdb but it keeps throwing ImportError: cannot import name 'NoArgsCommand' from 'django.core.management.base'. I first tried running the command below: python manage.py inspectdb --database \transactions\db.sqlite3 Which gave me the error: from django.core.management.base import NoArgsCommand, CommandError ImportError: cannot import name 'NoArgsCommand' from 'django.core.management.base' (C:\Users\E.Musonda\AppData\Local\Programs\Python\Python310\lib\site-packages\django\core\management\base.py) I then moved my sqlite3 to my projects base directory and run the command below: python manage.py inspectdb > models.py Which still produced the same error. Django database configuration: DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': BASE_DIR / 'db.sqlite3', } } Has anyone encountered this problem before and solved it? Or maybe I'm using the inspectdb command in a wrong way? Any help appreciated! -
how to save all python requests going out and set a proxy
how to save all API requests going out and then set a proxy in a Django or python project import requests proxies = { "https": "8.219.97.248:80" } url = "http://127.0.0.1:8000/api/product" r = requests.get(url, proxies=proxies) print(r.text) -
Django serialize custom user model
I have CustomUser model which inherits from AbstractUser clas. I have a serializer which throw me following errors: When I use from django.contrib.auth.models import User, the error is "AttributeError: 'NoneType' object has no attribute '_meta'". When I use from users.models import User, the error is "'QuerySet' object has no attribute 'email'", but the email field exists within the model. Here is what my serializer looks like: from rest_framework import serializers from users.models import User # from django.contrib.auth.models import User class DepartmentSerializer(serializers.ModelSerializer): class Meta: model = Department fields = ['id', 'title', 'is_active'] class CustomUserSerializer(serializers.ModelSerializer): department = DepartmentSerializer() class Meta: model = User fields = ['id', 'email', 'ad_login', 'sap', 'user_type', 'language', 'first_name', 'last_name', 'department'] In my settings I have also defined "AUTH_USER_MODEL = 'users.User'". Hoping this is enough information, what may be the cause of these errors? -
How to Insert in SQL using django app but getting COUNT field incorrect or syntax error
I want to insert data from django to sql but getting error : ('07002', '[07002] [Microsoft][ODBC SQL Server Driver]COUNT field incorrect or syntax error (0) (SQLExecDirectW)') My code is below: for connection: def connsql(): server = '' database = '' username = '' password = '' conn = pyodbc.connect('DRIVER={SQL Server};SERVER='+server+';DATABASE='+database+';UID='+username+';PWD='+ password) return conn for storing data in db: connectionString=self.connsql() saveDetails=ModelClass() todayDate=date.today() saveDetails.Date=todayDate.strftime('%m/%d/%Y') saveDetails.Questions=question saveDetails.Result=str(result) cursor=connectionString.cursor() cursor.execute("insert into [dbo].[testtable] (Date,Questions,Result) values ("+saveDetails.Date+"','"+saveDetails.Questions+"','"+saveDetails.Result+");") cursor.commit() As I'm new to this any help will be thankfull. -
How Make each app use diffrent database(postgresql)?
My project have 3 apps(accounts:sqlite, books:postgresql, publishers:postgresql), And I want each app use its own db but I don't know how :( I installed pgAdmin and created table and databases but I can't connect it correctly to django! This is my setting Databse part: DATABASES = { 'default': {}, 'accounts': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': BASE_DIR / 'users.sqlite3', }, 'books_db': { 'NAME': 'book_data', 'ENGINE': 'django.db.backends.postgresql', 'USER': 'postgres', 'PASSWORD': 'root', 'HOST': '127.0.0.1', 'PORT': '5432', }, 'publishers_db': { 'NAME': 'publisher_data', 'ENGINE': 'django.db.backends.postgresql', 'USER': 'postgres', 'PASSWORD': 'root', 'HOST': '127.0.0.1', 'PORT': '5432', } } -
Django remove source files and how to running pyc files?
In Django project, I don't share the views.py to client. like to remove views.py source files from Django, only pyc files there. But when i remove source file, it gives me ImportError, it should refer pyc file, but it is not refering them. How to solve this problem? -
How to display latest created multiple records created twice in a same day in django
Here when the user clicks the schedule button multiple times in a day it is creating same set of records multiple times in the database But i want to display to only the lastest created records for example when the user clicks the schedule button first time it creates records from id 1 to 5 and again when the user clicks the schedule button for the second time its is creating the same records i.e id from 6 to 10 with updated time different Now in my front end i want to display only the records from 6 to 10 (because id 1 to 5 and 6 to 10 are same records irrespective of updated_on field) id o_num_id p_id s_date time_req i_line_id updated_on 1 1312 22 2023-03-14 225 2426 2023-03-10 06:19:52.174517 2 1312 22 2023-03-13 120 2426 2023-03-10 06:19:52.174517 3 1312 21 2023-03-12 430 2426 2023-03-10 06:19:52.174517 4 1312 20 2023-03-11 350 2426 2023-03-10 06:19:52.174517 5 1312 20 2023-03-10 720 2426 2023-03-10 06:19:52.174517 6 1312 22 2023-03-14 225 2426 2023-03-10 06:23:52.174517 7 1312 22 2023-03-13 120 2426 2023-03-10 06:23:52.174517 8 1312 21 2023-03-12 430 2426 2023-03-10 06:23:52.174517 9 1312 20 2023-03-11 350 2426 2023-03-10 06:23:52.174517 10 1312 20 2023-03-10 720 … -
The authenticate function return always none Django Project
I am working on a vehicle project management system, and using a custom table for storing the signup details in MySQL. When the user logins the authenticate function returns none always, I am using email and password fields for login checked the values are retrieving from database correctly or not The backend authentication ' def userLogin(request): if request.method == 'POST': email = request.POST.get('email') password = request.POST.get('password') print('from loginhtml page',email,password) try: user_profile = UserProfiles.objects.get(email=email) user = authenticate(request, username=email, password=password) print("from database ",user_profile.email,user_profile.password) print(user) if user is not None: login(request, user) messages.success(request, 'You have been logged in successfully.') return redirect('/DashboardPage.html') else: error_message='Invalid email or password. Please try again.' messages.error(request, error_message) except UserProfiles.DoesNotExist: error_message='Invalid email or password. Please try again.' messages.error(request, error_message) return render(request, 'userLogin.html') from django.contrib.auth.backends import BaseBackend from django.contrib.auth import get_user_model from django.shortcuts import redirect from .models import UserProfiles class UserProfileBackend(BaseBackend): def authenticate(self, request, email=None, password=None): try: user = UserProfiles.objects.get(email=email) if user.check_password(password): return user except UserProfiles.DoesNotExist: return None {% load static %} <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <title>Vehicle Parking Management System - User Login</title> <link href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" rel="stylesheet"> <link href="https://fonts.googleapis.com/css?family=Montserrat:400,700&display=swap" rel="stylesheet"> <link rel="stylesheet" href="{% static 'styles/loginstyle.css' %} "> </head> <body> <nav class="navbar navbar-expand-lg navbar-light bg-light"> … -
Should I create an endpoint per HTTP method in my Django backend application?
I am developing a Django backend application with Django Rest Framework. Apart from having to write a lot of code, is it good practice to have a separate endpoint for each CRUD operation? Say I have an Organization model that I would like to create CRUD endpoints for. My usual approach is to create an endpoint ListCreateOrganization(generics.ListCreateAPIView) and map that to the path /organization/. Then create another endpoint /organization/<int:pk>/ for a RetrieveUpdateDeleteOrganization(generics.RetrieveUpdateDestroyAPIView) (assuming all CRUD operations apply). What are the scalability and performance concerns of this approach? What about creating five endpoints and mapping that to each operation: Create - /organization/create List (get multiple instances) - /organization/list/ Get a single instance - /organization/<int:pk>/retrieve/ Update a single instance - /organization/<int:pk>/update/ Delete a single instance - /organization/<int:pk>/delete/ -
Image not working django (TRYING TO ADD PLACEHOLDER IMAGE)
Iam doing a food ordering website using django. Iam trying to keep the place holder image but it is not working. Below I have attached models.py,0001_initials.py,index.html. I tried but it is not working models.py: from django.db import models # Create your models here. class Item(models.Model): name=models.CharField(max_length=200) desc=models.CharField(max_length=200) price=models.CharField(max_length=200) image=models.CharField(max_length=400,default='https://upload.wikimedia.org/wikipedia/commons/e/e0/PlaceholderLC.png') def __str__(self) : return self.name 0001_initials.py: # Generated by Django 4.1.7 on 2023-03-07 13:10 from django.db import migrations, models class Migration(migrations.Migration): initial = True dependencies = [ ] operations = [ migrations.CreateModel( name='Item', fields=[ ('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')), ('name', models.CharField(max_length=200)), ('desc', models.CharField(max_length=200)), ('price', models.CharField(max_length=200)), ('image', models.CharField(default='https://upload.wikimedia.org/wikipedia/commons/e/e0/PlaceholderLC.png', max_length=400)), ], ), ] index.html: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head> <body> {% for item in item %} <div class="row"> <div class="col-md-3 offset-md-3"> <img src='{{item.image}}' class="card" height="150px"> </div> </div> {% endfor %} </body> </html> These are the files. Output: enter image description here -
Difference between calling user.save() and create_user when using UserCreationForm (or subclass of) and register view in Django
I am making a web app using Django 4.1. I am trying to implement a simple registration page. For the moment, I am using the UserCreationForm provided by Django. I do intend to implement a custom Here is my code from views.py: def register(request): if request.method == "POST": form = UserCreationForm(request.POST) if form.is_valid(): user = form.save(commit=False) user.clean() username = form.cleaned_data.get("username") raw_password = form.cleaned_data.get("password1") response_text = ( f"Received username: {username}\nReceived password: {raw_password}" ) user.save() return HttpResponse("<p>" + response_text + "</p>") else: form = UserCreationForm() return render(request, "register.html", {"form": form}) I need some help on knowing when create_user is used. I looked at this, but it doesn't address the issue of when to use create_user in the context of a registration form. How would one use create_user() in a user registration view? Should it even be used? What are the best practices? -
How to I make a Django model field with choices of all IANA timezones?
I would like to have a dropdown in the django admin console for valid iana timezone choices. How can I achieve something like this: from django.db import models class Building(models.Model): name = models.CharField(max_length=100) iana_timezone = models.CharField(max_length=100, choices=iana_timezone_choices) -
How to make a loop in views.py file through my Django Session Cart Data
This data i added to Django session.I want to calclute single data: (qty and price ) and i want to claclute my (total amount) dict_items([('1', {'name': 'Talon Lott', 'image': '/media/images/products/1.png', 'reg_price': '958.0', 'dis_price': '844.0', 'qty': 1}),('2', {'name': 'Lionel Owens', 'image': '/media/images/products/2.png', 'reg_price': '684.0', 'dis_price': '221.0', 'qty': '1'}),('3', {'name': 'Brenna Chan', 'image': '/media/images/products/3.png', 'reg_price': '728.0', 'dis_price': '177.0', 'qty': 1}),('4', {'name': 'Amos Osborne', 'image': '/media/images/products/4.png', 'reg_price': '453.0', 'dis_price': '547.0', 'qty': '1'})]) But In views.py file when i loop this data i only get id:1 data. {'name': 'Talon Lott', 'image': '/media/images/products/1.png', 'reg_price': '958.0', 'dis_price': '844.0', 'qty': 1} So how may i make a loop for my session data Here is my views.py file I used Jquey ajax on Add_to_cart button to add my product Add To Cart # Add To Cart def add_to_cart(request): card_product = {} card_product[str(request.GET['id'])] ={ 'name': request.GET['name'], 'image': request.GET['image'], 'reg_price': request.GET['reg_price'], 'dis_price': request.GET['dis_price'], 'qty': request.GET['qty'] } # print(card_product) # print(id, name, image, reg_price, dis_price, qty) if 'cartdata' in request.session: if str(request.GET['id']) in request.session['cartdata']: card_data = request.session['cartdata'] card_data[str(request.GET['id'])]['qty'] = int(card_product[str(request.GET['id'])]['qty']) card_data.update(card_data) request.session['cartdata'] = card_data else: card_data = request.session['cartdata'] card_data.update(card_product) request.session['cartdata']= card_data else: request.session['cartdata'] = card_product return JsonResponse({ 'data':request.session['cartdata'], 'totalitems':len(request.session['cartdata']) }) # Cart Page View class CartListView(IndexView): template_name = 'cart/cart.html' def get_context_data(self, … -
django.template.exceptions.TemplateSyntaxError: Could not parse the remainder: '{' from '{'
I'm trying to display a photo on a page. My code: # views.py def productHTML(request, uuid): product = Product.objects.get(id = uuid) path = product.category.path_to_foto slovar = {"product": product, "category": path} return render(request, "product.html", slovar) productHTML.html: {% extends 'products.html' %} {% load static%} {% block title %}Продукт{% endblock %} {% block page_content %} {% if product %} <p>Путь до фото: {{path}} </p> <img src="{% static {{ path }} %}" alt="product picture" width="540" height="300"> <p><b>Категоия: </b>{{ product.category }} </p> <p><b>Название: </b>{{ product.name }}</p> <p><b>Марка: </b>{{ product.marka }}</p> <p><b>Привод: </b>{{ product.privod }}</p> <p><b>Лошадиные силы: </b>{{ product.loshad_sila }}</p> <p><b>Коробка передач: </b>{{ product.box_peredach }}</p> <p><b>Объём двигателя: </b>{{ product.volume_dvigatel }} <p><b>Цена: Бесплатно</p> <button>КУПИТЬ</button> {% endif %} {% endblock %} Through Product.objects.get(id = uuid) I get a specific product. Through product.category.path_to_foto I get the path to the photo of this product. After that I'm trying to put this path into a variable and display it on the html page, but I get an error: django.template.exceptions.TemplateSyntaxError: Could not parse the remainder: '{{' from '{{' All product photos are stored in static/media If you need any details, I am ready to provide them. I tried to change the path to the photo. For example, I tried to replace media/<file> … -
Save multiple forms in one view
I have the following relational models: class Anuncio(models.Model): anunciante = models.ForeignKey(User, verbose_name=_("anunciante"), on_delete=models.CASCADE, null=True) titulo = models.CharField(_("titulo del anuncio"), max_length=50) class Producto(models.Model): nombre = models.CharField(_("nombre del producto"), max_length=50) anuncio = models.ForeignKey(Anuncio, on_delete=models.CASCADE, related_name='products', blank=True, null=True) class Imagen(models.Model): producto = models.ForeignKey(Producto, on_delete=models.CASCADE, related_name='imagen', blank=True, null=True) imagen = models.ImageField(upload_to='marketplace/') I have a form, that allows adding an instance of all of three models with the proper relations. This works okay, but I'm trying to add a feature that adds additional Producto and Imagen instances to the same Anuncio. I'm rendering the additional forms with JavaScript and I get the render OK, but I can't get the data of the additional forms saved. This is the main Anuncio create view: def anunciocreateview(request): if request.method == "POST": anuncio_form = AnuncioForm(request.POST or None) producto_form = ProductoForm(request.POST or None) imagen_form = ImagenForm(request.POST, request.FILES) if all([anuncio_form.is_valid(), producto_form.is_valid(), imagen_form.is_valid()]): anuncio = anuncio_form.save(commit=False) anuncio.anunciante = request.user anuncio.save() producto = producto_form.save(commit=False) producto.anuncio = anuncio producto.save() imagen = request.FILES.get('imagen') if imagen: Imagen.objects.create(producto=producto, imagen=imagen) return HttpResponse(status=204, headers={'HX-Trigger' : 'eventsListChanged'}) else: print(anuncio_form.errors) print(producto_form.errors) print(imagen_form.errors) else: anuncio_form = AnuncioForm() producto_form = ProductoForm() imagen_form = ImagenForm() context = { 'anuncio_form' : anuncio_form, 'producto_form' : producto_form, 'imagen_form' : imagen_form } return render(request, 'buyandsell/formulario.html', context) And this … -
Django: password is being saved plain text in MySQL Database
I'm trying to register user. When i'm creating superuser, password is being saved correctly, however when i'm registering the user through the api, it's being saved as plain text. My RegisterSerializer: from django.contrib.auth.models import User from rest_framework import serializers, validators class RegisterSerializer(serializers.ModelSerializer): class Meta: model = User fields = ('username', 'password', 'email', 'first_name', 'last_name') extra_kwargs = { "password": {"write_only": True}, "email": { "required": True, "allow_blank": False, "validators": [ validators.UniqueValidator( User.objects.all(), "A user with that Email already exists" ) ] }, 'first_name': {"required": True}, 'last_name': {"required": True} } def create(self, validated_data): user = User( email=validated_data.get('email'), username=validated_data.get('username'), first_name=validated_data.get('first_name'), last_name=validated_data.get('last_name'), ) user.set_password(validated_data.get('password')) user.save() return user views.py register request: @api_view(['POST']) def register_api(request): serializer = RegisterSerializer(data=request.data) serializer.is_valid(raise_exception=True) user = serializer.save() _, token = AuthToken.objects.create(user) return Response({ 'user_info': { 'id': user.id, 'username': user.username, 'email': user.email, 'first_name': user.first_name, 'last_name': user.last_name, }, 'token': token }) -
React JS, Python Django Tutorial - infinite loop componentDidUpdate
I'm following an online video tutorial on creating a CRUD full-stack app with React/Django/Sqlite, but I am running into an infinite loop when fetching any table data. The problem seems to be caused by componentDidUpdate, which is necessary for reloading the table after updating/deleting an entry. Here's a sample code snippet below (links below): refreshList(){ fetch(process.env.REACT_APP_API+'employee') .then(response=>response.json()) .then(data=>{ this.setState({emps:data}); //<=? }); } componentDidMount(){ this.refreshList(); } componentDidUpdate(){ //<= this.refreshList(); } Learn React JS, Python Django by Creating a Full-Stack Web App from Scratch GitHub Source Code Problem Code Snippet -
Brand new to Django. from django.urls import include, path not working
Cannot import include into urls.py It was working a few hours ago, and I broke something, badly. Please be nice. Newbie Haven't touched UNIX or a program in 30 years. Thanks I tried, in urls.py from django.urls import include, path VS Code won't even light up the "include" Django Version 4.0.3