Django community: RSS
This page, updated regularly, aggregates Django Q&A from the Django community.
-
How is a template tested outside the request-response cycle?
How is a template and it's context tested for when testing it in isolation? To be specific, this template is being included into another with the {% include %} tag. I've used two different test assertions yet they raise these assertion errors: self.assertInHTML => AssertionError: False is not true : Couldn't find 'id=question_id_1' in response self.assertIn => AssertionError: 'id=question_id_1' not found in '\n<div id="question_id_1">\n\n</div>\n' class TestUserQuestionProfileTemplate(TestCase): @classmethod def setUpTestData(cls): tag1 = Tag.objects.create(name="Tag1") tag2 = Tag.objects.create(name="Tag2") user = get_user_model().objects.create_user("ItsNotYou") profile = Profile.objects.create(user=user) question = Question.objects.create( title="Test Question ZZZ", body="Post content detailing the problem about Test Question ZZZ", profile=profile ) question.tags.add(*[tag1, tag2]) cls.template = render_to_string( "authors/questions.html", {"question": question} ) def test_template_user_questions_listing(self): self.assertInHTML("id=question_id_1", self.template) self.assertIn("id=question_id_1", self.template) authors/questions.html <div id="question_id_{{ question.id }}"> </div> -
Acquiring a lock on a table to be reindexed?
first of all, I assure you, I have googled for hours now. My main problem is that I'm trying to fix a corrupted database of the tool paperless-ngx that I'm using. I am an IT admin but I have no experience with SQL whatsoever. I'm getting this error: ERROR: missing chunk number 0 for toast value 52399 in pg_toast_2619 Now every guide on the entire internet (I'm gonna post this one for reference) on how to fix this tells me to REINDEX the table. When I do this using reindex (verbose) table django_q_task; it keeps waiting indefinitely with this errormessage: WARNING: concurrent insert in progress within table "django_q_task" I am positive that there is no write happening from paperless side, all containers except for the database container have been stopped. I tried locking the table using lock table django_q_task in exclusive mode nowait; but the error persists. I'm at the end of my wits. I beg of you, can someone provide me with detailed instructions for someone with no postgresql experience at all? -
Django React Integration Error manifest.json not found 404
I integrated my react project successfully with Django. But every time I run the Django server, I get a manifest.json not found error. Also, when I ever I make any changes to the react app, it's not live to update when I run the Django server. I have to call npm run build every time to update the Django website. Is there a solution for this such that I do not get the manifest.json not found error and also the website server live updates as I update the front end react code. index.html <head> <meta charset="utf-8" /> <link rel="icon" href="/favicon.ico" /> <meta name="viewport" content="width=device-width,initial-scale=1" /> <meta name="theme-color" content="#000000" /> <meta name="description" content="Web site created using create-react-app" /> <link rel="apple-touch-icon" href="/logo192.png" /> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3" crossorigin="anonymous" /> <link rel="manifest" href="%PUBLIC_URL%/manifest.json" /> <script src="https://unpkg.com/react/umd/react.production.min.js" crossorigin></script> <script src="https://unpkg.com/react-dom/umd/react-dom.production.min.js" crossorigin></script> <script src="https://unpkg.com/react-bootstrap@next/dist/react-bootstrap.min.js" crossorigin></script> <script>var Alert = ReactBootstrap.Alert</script> <title>React App</title> <link href="/static/css/2.e58a5209.chunk.css" rel="stylesheet"> <link href="/static/css/main.f38b3f41.chunk.css" rel="stylesheet"> </head> urls.py path('', TemplateView.as_view(template_name='index.html')), Directory Structure: enter image description here -
Unable to print JWT token in Django backend API
When I send a request from my React frontend to my backend api views, I can print the token, but it won't work for one specific view endpoint. There is nothing different in that code from the other view endpoints. This is the code I use to authenticate users, decode the JWT token, and print it to the terminal: def get(self, request): # print(request.headers) auth = get_authorization_header(request).split() print(auth) if auth and len(auth) == 2: token = auth[1].decode('utf-8') id = decode_access_token(token) I know it's not the frontend because it will print the token if I try to hit another endpoint from that same component. I'm completely stumped, and I don't know what to try. Any help is appreciated; thanks! -
installing python packegs problem on my machine
I have 3.10m python on my Machine but i was trying to run some commend through the command line and I keep getting the same error over and over even i have the python path in my environment paths SyntaxError: invalid syntax py -m pip install Django File "", line 1 py -m pip install Django ^^^ also pip install django file "", line 1 pip install django ^^^^^^^ syntaxerror: -
OperationalError at /profile/ no such table: users_profile even after I made migrations
I have the problem. When I'm trying to open a profile page to see the user's photo, but I can't, when I delete the line with user.register.photo, It works. I created a model, where there is a field that allows to users appload a photo, but when I'm trying to open "profile/" it shows this mistake. Seems like the problem is in migrations. I tried to delete migration folder, sqlite3 base and make migrations again, but it showed that "there are no changes" after I used makemigrations. It did not work for me, how can I fix this problem? users/models.py from django.db import models from django.contrib.auth.models import User class Profile(models.Model): user = models.OneToOneField(User, on_delete=models.CASCADE) image = models.ImageField(default='default.jpg', upload_to='profile_pics') def __str__(self): return f'{self.user.username} Profile' users/views.py from django.shortcuts import render, redirect from django.contrib import messages from .forms import UserRegisterForm from django.contrib.auth.decorators import login_required def register(request): if request.method == 'POST': form = UserRegisterForm(request.POST) if form.is_valid(): form.save() username = form.cleaned_data.get('username') messages.success(request, f'Создан аккаунт {username}!') return redirect('login') else: form = UserRegisterForm() return render(request, 'users/register.html', {'form': form}) @login_required def profile(request): return render(request, 'users/profile.html') users/forms.py from django import forms from django.contrib.auth.models import User from django.contrib.auth.forms import UserCreationForm class UserRegisterForm(UserCreationForm): email = forms.EmailField() class Meta: model = User … -
Django: show all related many-to-many items for a queryset
I have the following models: class NoteModel(models.Model): note = models.CharField( max_length = 5000, ) note_title = models.CharField( max_length = 500, blank = False, null = True, ) project = models.ForeignKey( IndividualProject, on_delete=models.CASCADE, related_name = "note_projects", blank = False, null = True, ) tags = models.ManyToManyField( NoteTagModel, related_name="tags", blank= False, ) def __str__(self): return f"{self.note_title}" class IndividualProject(models.Model): project = models.CharField( max_length = 64 ) def __str__(self): return f"Project {self.project}" I want to be able to find the tags for each project. So far I have the following: proj = IndividualProject.objects.get(id=2) notes = NoteModel.objects.filter(project = proj) notes is a QuerySet, how do I find all of the tags related to each item of the QuerySet? Ideally I would look to sort this in my views.py so that I could cleanly loop through in my template. Any help is greatly appreciated. -
Django ORM get all fields value. (foreign keys)
class MyUser(models.Model): name = models.CharField(max_length=10) class Foo(models.Model): my_user = models.ForeignKey(MyUser,on_delete=models.CASCADE) text = models.CharField(max_length=25) Let's say we have two models like this. I want to get all fields with an ORM query from the MyUser model. Like this: { "name":"example" "Foo":{ "text":"example-text", "text":"example_text2" } } How should I write a query to do this? MyUser.objects.all() # But give it ALL FIELDS + RELEATED FIELDS -
Best way to mock an RSS news feed endpoint in python?
I am currently implementing a feature which pulls the data from an RSS feed, parses it, does some modifications to it and saves it to our db. I have to specify that this all happens in a Django project. I pull the data from the RSS feed by using the feedparser library. I've also decided to write some tests, to make sure that the news feed is parsed well and that the whole process (from pulling and parsing the data to modifying it to saving it in our db) goes well. In those tests I've even managed to generate a dummy RSS feed using Django's feedgenerator util. However, I do not know how to effectively mock the RSS feed endpoint. I've tried using requests-mock but to no avail. I know for a fact that feedparser uses urllib. Should I mock something from urllib to make it work? Or should I start a server in another process that accepts connections and responds to everything with the mock RSS data? (something made with make_server from this example). The end goal for me would be to have something like this: request_mocker.get(RSS_NEWS_FEED_URL, data=dummy_rss_data, status_code=200) So when feedparser calls that RSS_NEWS_FEED_URL, it gets the dummy_rss_data. -
I am having trouble with logging users in and out of my blog
I am makeing a blog with Django and there is one admin account associated with the program. However, whenever I log in to the admin account and when I open a new window and go to my site, the new instance of my site is logged into my admin account. Does dose anyone know how I can fix this? -
django.db.utils.OperationalError: FATAL: role "user" does not exist
I am trying to authenticate users with django and postgresql. My project is dockerized. When I run docker-compose up --build I get an error saying: django.db.utils.OperationalError: FATAL: role "django2" does not exist I know error says role django2 doesn't exists but it does. If I run CREATE ROLE django2; I get an error saying ERROR: role "django2" already exists. My DATABASE section of settings.py: DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql', 'NAME': 'zane_db', 'USER': 'django2', 'PASSWORD': 'django2', 'HOST': 'db', 'PORT': 5432 } } My registration view: letters = ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"] numbers = ["1", "2", "3", "4", "5", "6", "7", "8", "9",] characters = letters + numbers length = 5 token = "".join(random.sample(characters, length)) def signup(request): if request.method == "POST": context = {'has_error': False, 'data': request.POST} global password global password2 global email global username email = request.POST.get('email') username = request.POST.get('username') password = request.POST.get('password') password2 = request.POST.get('password2') body = render_to_string('authentication/email/email_body.html', { 'username': username, 'token': token, }) send_mail( "Email Confirmation", body, 'tadejtilinger@gmail.com', [email] ) return redirect('email-confirmation') return render(request, 'authentication/signup.html') def email_confirmation(request): if request.method == "POST": context = {'has_error': False, … -
Django model data query Exclude objects which are connected to another model by ForeignKey
I have two django models named Quiz and Result class Quiz(models.Model): name = models.CharField(max_length=250) another model class Result(models.Model): quiz = models.ForeignKey(Quiz, on_delete=models.CASCADE, related_name='results') Now i want to query data from this in two ways I want all the Quiz objects which do not have a Result I want all the Quiz objects which have a Result How can I do this? -
DoesNotExist error when using custom User model
I have a Group model in my group/models.py file: class Group(models.Model): leader = models.ForeignKey(User, on_delete=models.CASCADE) name = models.CharField(max_length=55) description = models.TextField() joined = models.ManyToManyField(User, blank=True) and an Account model, which is an extension of django's standard User, in users/models.py: class Account(models.Model): user = models.OneToOneField(User, on_delete=models.CASCADE) joined_groups = models.ManyToManyField(Group, related_name='joined_group') created_groups = models.ManyToManyField(Group) in users/admin.py: class AccountInline(admin.StackedInline): model = Account can_delete = False verbose_name_plural = 'Accounts' class CustomUserAdmin(UserAdmin): inlines = (AccountInline,) admin.site.unregister(User) admin.site.register(User, CustomUserAdmin) The issue I'm having trouble understanding is when I create a new User, the Account for that User doesn't seem to really be registering. At the bottom of the new User's page (via django admin site) the new Account looks like this: Now, this new User seems to have an account which contains joined_groups and created_groups but when I try to join or create a Group with that new User, I get an error DoesNotExist - Account matching query does not exist I'm not sure why the new User/Account isn't really registering its Account. In comparison, inside my AdminUser page its Account info looks like this: Account: #1 for the new User vs. Account: Acount object (6) for Admin User. Finally, when I go onto the django … -
What makes my Django/Heroku app allow mobile version of a site?
I am new to web development. I just got my first project online, wich is Django app deployed in Heroku. App uses Bootstrap. When I use any size desktop browser window the app scales as I excpect it to. When I access it from my android phone it uses "mobile site" (if that's what it's called). The mobile site looks like a mess. If I use the "desktop site mode" on mobile it looks what I excpected it to look. I am trying to figure witch part of the stack is responsible for this happening. Is it possibly some of these? Django Bootstrap Heroku Browser I have not made any setting to use mobile site (at least not intentionally) so I am to assume this is the default for the tech responsible for this. Also in general; if I want my app to be usable both in desktop and mobile enviroments is it usually enough just to make site responsive and not bother with the "mobile site"? -
django static file not loading after updating it on production
i just deployed a django web app on azure i have a script which runs when i goes to myapp.com/update url it basically fetches data using bs4 library and convert the data into a pandas df then to show that data i used pd.to_html to convert it in html table format and stores that html file in static folder and then load it in my index.html (which present in templates folder using jquery) and mind you the html loads fine but after the i visit the update url it stops showing the updated html file (panada df one). i even goes to azure panel to see the updated html file (pandas df one) and it was there it got updated but cuz of the update, the site is not loading it anymore but before update it was loading perfectly --script in my views.py (for myapp.com/update url)-- text_file2 = open("staticfiles/album.html", "w") text_file2.write(updatedData) text_file2.close() this is how i'm adding that html file to my main index.html file (this loads the file perfectly but after update url it stops loading it) <script> $(function () { $("#includedAlbums").load("../static/album.html"); }); </script> Help me asap please. Thanks in advance <3 -
Django popup forms - CRUD
Could someone explain from the video below how the user call the "Edit" function? https://www.youtube.com/watch?v=P78-ltyeuVg&t=646s (19:18) Thank you! -
How to stream .webm or .mjpeg from Python Django server?
I have a .webm feed from a 3rd party camera source. I would like to redistribute this to my web clients. I can open the stream in OpenCV then redistribute the .jpg images which works perfectly with img tags. However, I would like to convert this into a .webm or .mjpeg stream for use with video.js or other video tag. I don't have enough experience with HTTP protocol or video formatting and all my research only shows this .jpg streaming method. models.py streamManagerLock = threading.Lock() streamManagers = {} class StreamManager: active = True lastTime = time.time() image = None def __init__(self, cameraObj): self.camera = cameraObj url = "https://" + str(cameraObj.system.systemID) + ".relay-la.vmsproxy.com" self.stream = cv.VideoCapture("{url}/web/media/{camID}.webm?auth={auth}".format(url=url, camID=cameraObj.cam_id, auth=cameraObj.system.getAuth())) self.stream.set(cv.CAP_PROP_BUFFERSIZE, 5) self.killThread = threading.Thread(target=self.selfTerminate, daemon=True) self.lastTime = time.time() self.killThread.start() self.updateThread = threading.Thread(target=self.update_frame, daemon=True) self.updateThread.start() def selfTerminate(self): while True: if time.time() - self.lastTime > 3: break time.sleep(1) self.terminate() def terminate(self): with streamManagerLock: streamManagers.pop(str(self.camera.cam_id)) self.active = False self.stream.release() def update_frame(self): while self.active: ret, image = self.stream.read() if ret: ret, jpeg = cv.imencode('.jpg', image) self.image = jpeg.tobytes() else: ret, img = cv.imencode('.jpg', np.zeros([100, 100, 3], dtype=np.uint8)) return img.tobytes() time.sleep(1/30) def get_frame(self): self.lastTime = time.time() if self.image is None: ret, img = cv.imencode('.jpg', np.zeros([100, 100, 3], … -
How do i use filter to filter multiple radio buttons in django template in Django
How do i use filter to filter multiple radio buttons in django template in Django...I want a situation where when you select multiple buttons it filters the cars based on how many cars you have selected. This is my views.py How do i use filter to filter multiple radio buttons in django template in Django...I want a situation where when you select multiple buttons it filters the cars based on how many cars you have selected. def new_cars(request): if request.method == "POST": car_brand_label = request.POST.getlist('car_brand_label') if not car_brand_label : car_brand_label = "" for car_brand_label_iter in car_brand_label: # print(car_brand_label_iter) image_new_car = Image.objects.filter(car__condition = 'BRAND NEW',car__brand__icontains = car_brand_label_iter ) new_car = Car.objects.filter(condition = 'BRAND NEW',brand__icontains= car_brand_label_iter) new_car_label = Car.objects.filter(condition = 'BRAND NEW') new_cars_list = zip(new_car,image_new_car ) new_car_label = Car.objects.filter(condition = 'BRAND NEW') new_cars_list = zip(new_car,image_new_car ) # new_cars_label = zip(new_car,image_new_car ) context = { 'new_cars_list' : new_cars_list, 'new_cars_label' : new_car_label } return render(request, 'frontend/new_cars.html', context) else: image_new_car = Image.objects.filter(car__condition = 'BRAND NEW') new_car = Car.objects.filter(condition = 'BRAND NEW') new_cars_list = zip(new_car,image_new_car ) new_cars_label = zip(new_car,image_new_car ) context = { 'new_cars_list' : new_cars_list, 'new_cars_label' : new_car } return render(request, 'frontend/new_cars.html', context) and this is my template. <a href="{% url 'new_cars' %}"> <h4>Brand New … -
How to put objects in column in Django templates
I'm developing an ecommerce project. It's my first time with Django, so be patient. I have some objects in a list, whith so many fields. I want to put this object in column in my template. I tried with the but in a for loop it doesn't recognize more than one div. Is there a method to incolumn my object in my template? Here's my code: enter image description here -
Heroku overriding django's errors
I followed the official Django documentation on writing custom error views, that is, handler404, handler500 etc. When set debug to false on on my project's settings, the custom error pages display as expected. Once I deploy to heroku, it seems like heroku overrides the django's error pages and returns its own instead. For example, for a 404 not found, when debug is set to True, the django's error debug page is displayed and the response code is 404. Once debug is set to False, the response code is even no longer 404 but rather 503 which is returned by heroku and not Django. What's happening and how do I solve that? -
unique_together in Meta vs validate_unique function in model
I would like to know the difference between these two methods of checking for unique-ness. I have two fields which I do not want there to be duplicates of - key_name and developer_email - i.e. a developer can not have two keys with the same name. But two developers can have a key with the same name as each other. I found out about unique_together so I added this to KeyDefinitions in models.py: class Meta: verbose_name = "Key Definition" #constraints = [ # models.UniqueConstraint(fields=['key_name', 'developer_email'], name='unique key names for each user') #] unique_together = [['key_name', 'developer_email']] However, when I tested this by inputting a duplicate key_name and hitting "OK" on my form it just gives me back the form filled in and no errors. Although an entry hasn't been added to the database which tells me that this code is doing something. I wanted an error to be raised so I found out about validate_unique and added it to the same model like so: def validate_unique(self, exclude=None): # I feel like this function makes constraints/unique_together option in Meta obsolete ?! qs = KeyDefinition.objects.filter(key_name=self.key_name, developer_email=self.developer_email) # need to filter by developer too print(qs) if qs: raise ValidationError ( {'key_name' : ['This … -
Django liveserver displays as plain text
I ran my server with python manage.py runserver and for some reason it started displaying as plain text. When I run it as a live server it comes out normal. I have no idea what I changed that messed it up. Seems like a longshot but if anyone has encountered the same problem please let me know. For some reason, when I run it in the django liveserver, it is all wrapped in a pre tag -
Getting django.db.utils.ProgrammingError: (1146, “Table ‘password_management.accounts_workspace’ doesn’t exist”) while making db migrations
I am trying to make migrations by running the following command: python manage.py makemigrations But, I am getting the below error: django.db.utils.ProgrammingError: (1146, "Table 'password_management.accounts_workspace' doesn't exist") I am using MySQL Database named as password_management. Earlier my Django app was working fine with all the user migrations and stuff. When I made this new Model Workspace, I am getting the above mentioned error. Full Error Details: Traceback (most recent call last): File "D:\Projects\meistery\venvs\inviteandresetpass\lib\site-packages\django\db\backends\utils.py", line 89, in _execute return self.cursor.execute(sql, params) File "D:\Projects\meistery\venvs\inviteandresetpass\lib\site-packages\django\db\backends\mysql\base.py", line 75, in execute return self.cursor.execute(query, args) File "D:\Projects\meistery\venvs\inviteandresetpass\lib\site-packages\MySQLdb\cursors.py", line 206, in execute res = self._query(query) File "D:\Projects\meistery\venvs\inviteandresetpass\lib\site-packages\MySQLdb\cursors.py", line 319, in _query db.query(q) File "D:\Projects\meistery\venvs\inviteandresetpass\lib\site-packages\MySQLdb\connections.py", line 254, in query _mysql.connection.query(self, query) MySQLdb._exceptions.ProgrammingError: (1146, "Table 'password_management.accounts_workspace' doesn't exist") The above exception was the direct cause of the following exception: Traceback (most recent call last): File "D:\Projects\meistery\projects\pricing_password_management_poc\inviteandresetpass\manage.py", line 22, in <module> main() File "D:\Projects\meistery\projects\pricing_password_management_poc\inviteandresetpass\manage.py", line 18, in main execute_from_command_line(sys.argv) File "D:\Projects\meistery\venvs\inviteandresetpass\lib\site-packages\django\core\management\__init__.py", line 446, in execute_from_command_line utility.execute() File "D:\Projects\meistery\venvs\inviteandresetpass\lib\site-packages\django\core\management\__init__.py", line 440, in execute self.fetch_command(subcommand).run_from_argv(self.argv) File "D:\Projects\meistery\venvs\inviteandresetpass\lib\site-packages\django\core\management\base.py", line 414, in run_from_argv self.execute(*args, **cmd_options) File "D:\Projects\meistery\venvs\inviteandresetpass\lib\site-packages\django\core\management\base.py", line 455, in execute self.check() File "D:\Projects\meistery\venvs\inviteandresetpass\lib\site-packages\django\core\management\base.py", line 487, in check all_issues = checks.run_checks( File "D:\Projects\meistery\venvs\inviteandresetpass\lib\site-packages\django\core\checks\registry.py", line 88, in run_checks new_errors = check(app_configs=app_configs, databases=databases) File "D:\Projects\meistery\venvs\inviteandresetpass\lib\site-packages\django\core\checks\urls.py", line … -
Django - Connect to post_init signal on model change form only
I would like to use a post_init signal connection on a model instance to call a remote API which will fetch some data and then use this as a sort of dynamic model property that gets assigned to that instance when the change form is loaded. Specifically, I have another system that uses a completely different framework that has a model that is (mostly) the same as a model I have in Django. The post_init signal should check the remote version to see if there are any images saved to it, and then assign this boolean as a dynamic model property to the Django model instance. This would give me a condition to check during the model's post_save signal that I can use to determine if I need to upload images to the remote model or not. Since this will be calling a remote system, I don't want the API call in post_init to be called for every single model instance when loading the admin model list page, I only want it to happen on the change form. How can I exclude this expensive API call from all post_init signals except for when it is triggered from the model instance's … -
django resource get all fields ( manytomany,foreign key etc.)
As you can see from my question, I want to download data from all other relevant tables from the users table. class UserResource(resources.ModelResource): class Meta: model = User fields = ['__all__'] # But I want ALL FIELDS ( foreign key fields etc.)