Django community: RSS
This page, updated regularly, aggregates Django Q&A from the Django community.
-
how to run python file from flask and see the console output on the browser itself?
I have a python script suppose a+b=c. I want to run this script using flask from the browser and how to get the output of the python script in the browser itself. like a console in the browser. -
Django Rest API issue with retrieving correct information from urls. It is a Grandparent - Parent - Child relationship. How do I correctly map them?
I have been stuck on this problem for about 9 hours and am having trouble understanding the Grandparent - Parent - Child relationship with a One to Many Relationship(foreign key) in Django. I am currently creating an E-Commerce website and am trying to display the information in 4 different ways to fetch from my React frontend. I have 3 models setup: Category Subcategory (Foreign key to Category) Products (Foreign Key to Subcategory) This is the result I am attempting to create in my urls/views/serializer files: For some reason I can successfully retrieve at a granular level for a single product but as soon as I start going up nested models I am running into the following errors: Desired Result I have api/ included in the core urls folder already. I want JSON to display the information like this. # URLSearch api/Category/ # Category - # | # Subcategory 1 - # | # Product 1 # Product 2 # Subcategory 2 - # | # Product 1 # Proudct 2 I also want JSON to display the information like this. # URLSearch api/Category/Subcategory/ # Category - # | # Subcategory - # | # Product 1 # Product 2 Errors … -
How to Encrypt a Django Project inorder to deliver to a customer without seeing the code inside
I have a project which is a web application which is using Django framework which contains python and shell scripts in it. I wanted to Encrypt the package, so that the customers couldn't read/write what's there inside. Is there a way to encrypt the packages. -
Property of a self instance in Django Models?
recently i have created a model for storing some states in my DB. It's very simple i only store id and name. class PayType(models.Model): id = models.AutoField(primary_key=True) name = models.CharField(max_length=200) class Meta: ordering = ('-name',) def __str__(self): return "[{0}] {1}".format(self.id, self.name) Here you can see a migration where i insert default values in the DB. from django.db import migrations class Migration(migrations.Migration): dependencies = [ ('stockmanager', '0023_pagotipo_remove_carrito_unidades_totales_and_more'), ] def insertPayType(apps, schema_editor): PayType = apps.get_model('stockmanager', 'PayType') PayType(name="Credit").save() PayType(name="Debit").save() PayType(name="Cash").save() operations = [ migrations.RunPython(insertPayType) ] As you can see, i'll have fixed rows in DB. I'd like to add properties in the PayType Model, in order to have easy access the instances of the model. Like a static attribute in java. class PayType(models.Model): id = models.AutoField(primary_key=True) name = models.CharField(max_length=200) class Meta: ordering = ('-name',) def __str__(self): return "[{0}] {1}".format(self.id, self.name) # I'm looking for something like this @property def CREDIT(self): return self.objects.get(self, id = 1) @property def DEBIT(self): return get_object_or_404(self, id = 2) @property def CASH(self): return get_object_or_404(self, id = 3) In order to acces in a diferent part of my code with this class Pay(models.Model): id = models.AutoField(primary_key=True) order_id = models.IntegerField() value = models.FloatField() pay_type = models.ForeignKey(PayType, on_delete=models.CASCADE) Pay( order_id = order_id, … -
Django - Auto populating Many-To-Many-Field relation
I am trying to make a form that auto populates a many-to-many relation for my user model. The goal is to have a submit button that adds the views instance object (the SingelWorkout object) to a many-to-many field relation within my user model. The view accurately displays the correct object, and the form appears as intended within the template. I do not wish for the user to see the many-to-many field selection. Aside from the submit button, I am trying to have all logic to occur on the backend. How would I assign an object instance to a field within a form? Would this occur in the views.py or the forms.py? Here is why my user model looks like: class FitnessUser(AbstractUser): first_name = models.CharField(max_length=30) last_name = models.CharField(max_length=30) email = models.EmailField(max_length=60) age_category = models.ForeignKey( AgeGroup, on_delete=models.CASCADE, blank=True, null=True ) goal = models.IntegerField(default=1 ,choices=Purpose.choices) weight = models.CharField(max_length=30) height = models.CharField(max_length=30) gender = models.ForeignKey( Gender, on_delete=models.CASCADE, blank=True, null=True ) exercise_frequency = models.IntegerField(default=1 ,choices=Frequency.choices) template_id = models.ForeignKey( Workout_template, on_delete=models.CASCADE, blank=True, null=True ) completed_workouts = models.ManyToManyField(SingleWorkout) def get_absolute_url(self): return reverse('detail', args=[self.id]) This is my form in forms.py: class CustomWorkoutChangeForm(UserChangeForm): class Meta(UserChangeForm): model = FitnessUser fields = ('completed_workouts',) exclude = ('completed_workouts',) UserChangeForm.password = None This is … -
Field 'id' expected a number but got 'prashant'
I'm trying to get value of user field from my employee model but it's showing above error.I would request your solution to this problem.I have mentioned my models.py & views.py for reference. models.py class Employee(models.Model): First_Name = models.CharField(max_length=200,blank=False,null=False) Last_Name = models.CharField(max_length=200) DOB = models.DateField() Primary_skill=models.TextField(max_length=1000) user = models.OneToOneField(User,on_delete=models.CASCADE,null=True,blank=True) Employee_Id = models.UUIDField(primary_key=True,default=uuid.uuid4,editable=False,unique=True) views.py def loginp(request): page ='login' if request.method=="POST": username = request.POST.get("Username") password = request.POST.get("Password") name = Employee.objects.get(user=username) context={'use':name} try: username = Employee.objects.get(username=1) except: messages.error(request,"Invalid Username") user = authenticate(request,username=username,password=password) if user is not None: login(request,user) return render(request,'profile.html',context) else: messages.error(request,"Authentication Failed.Please Try again with correct credentials") context={'page':page} return render(request,'login.html',context) -
Can't get attribute 'ModelCreation' on <module '__main__
I have started to machine learning deployment using Django. I have successfully create a model and dump it using pickle file .I also dumbed Column Transformer. when I load these file in Django project column Transformer works fine but model file gives error like this . "Can't get attribute 'ModelCreation' on <module 'main" . I searched many places but I could not solve it . -
how to receive array of int's in django form modelmultiplechoicefield
here is my multiselect(vue js) value at template: .... <input type="hidden" name="related_parties" id="id_related_party" :value="[3]"> .... in the above code , :value is actually a vue js computed value , for simplicity using [3] .. in my django forms, my field is: ... related_parties = forms.ModelMultipleChoiceField( required=False, queryset=Party.objects.none()) ... in the Django form later I loop through the values received from template to create a list like below: ... for item in self.initial.get('related_parties'): "" if item.id: party_ids.append(item.id) ... afterwards i assign the queryset value in Django form like below: ... if party_ids: self.fields['related_parties'].queryset = Party.objects.filter(id__in=party_ids or None) else: self.fields['related_parties'].queryset = None ... this setup works great if its just :value="[3]" ,,, but in case of different values like "[3,2]", i end up getting validation error: "3,4" is not a valid value. do i have to use a different django field in django forms? how can i avoid the validation error in this case? -
React env could be dynamic with django?
Frontend: React Backend: django Description I use create-react-app For example, one of component is below # link is from .env <a href={link}></a> After React application is finished. I use npm run build So, link will always be same I want to thak link could be autmatically change to where I deployed on server e.g. # lab1 <a href="100.100.100.1"></a> # lab2 <a href="100.100.100.2"></a> This scenario happend if I doployed in lab1, lab2, lab3 ,labs all have their own ip. I need to change that IP in React application .env file and re-build again. So, if there are n labs, I need to re-build n times. Is this possible do not build anymore? -
Django request.data is giving wrong JSON
I send a request to the server with {"name" : "Robert"} but the request.data looks different. This works fine in runserver. But when used uwsgi in docker it gives something like, { "_content_type": "application/json", "_content": "{"name":"robert"}" } -
What is the best way to receiving data and polling it
My scenario is a webhook and a polling. Explaning... I have a view that receive a post with a json like {"status": "processing"}. And I need to make the value of this field available for another system polling the data. My idea is make a new endpoint for GET. But I no have idea of the how to make this value available? Need I create a table to save this data? Can I uses cache? -
Django model form with field not existing in model
I am using Django 3.2 I have a model like this: class BannedUser(models.Model): user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE, related_name="ban_info") reason = models.PositiveSmallIntegerField(choices=BANN_REASON_CHOICES) banned_at = models.DateTimeField(auto_now_add=True) expiry_date = models.DateField(null=True, blank=True, help_text=_('Date on which ban expires')) I want to create a form that instead of asking user to select a date, simply asks the user to select the Ban duration. The form will then calculate the expiration_date in the clean() method. BAN_DURATION_3_DAYS=3 # ... BAN_DURATION_CHOICES = ( (BAN_DURATION_3_DAYS, _('3 Days')), # ... ) class BannedUserForm(forms.ModelForm): class Meta: model = BannedUser fields = ['reason', 'ban_till'] The form field ban_till is a PositiveInteger that maps to the number of days. The intention is then to calculate the expiry_date from today by offsetting the integer amount. I suppose one way would be to: create a dynamic field ban_till add field expiry_date to the form field list (but somehow prevent it from being rendered) in the form's clean() method calculate the expiry_date and update that field How to create a form to display field that does not exist in Model? My solution: class BannedUserForm(forms.ModelForm): def __init__(self, *args, **kwargs): self.fields['ban_till'] = forms.IntegerField(widget=forms.ChoiceField()) super().__init__(*args, **kwargs) class Meta: model = BannedUser fields = ['reason'] Is this the correct way to … -
django.db.utils.OperationalError: connection to server at "database" failed: FATAL: sorry, too many clients already
I had a spike of this error in my Django application: django.db.utils.OperationalError: connection to server at "name-of-the-db" (172.17.0.11), port 5432 failed: FATAL: sorry, too many clients already My Django app is deployed on dokku and connected to a postgres database. The connection to the db is achieved using dj-datbase-url package and the setting looks like this: DATABASES = { "default": { **dj_database_url.parse( os.environ.get("DATABASE_URL", False), conn_max_age=600 ), "ATOMIC_REQUESTS": True, } } I use daphne in front of Django, and I’m running 3 processes with daphne. What could have been causing this issue? I have read that a possible solution is to drop the conn_max_age parameter or set it to a lower value, but I’m not sold on it and don’t completely understand how it works, so any guidance is welcome. Also, I haven’t registered any abnormal traffic on my website, but I’m wondering: is this something that can happen “spontaneously”, maybe due to an incorrect setup, or could it be due to malicious activity? The most likely explanation I can think of is there is some database connection leaks around my app, but I can’t figure out how to find them. -
Django Dynamically add choices to choicefield form
I would like to dynamically add choices to the form from data pulled in views.py. this list will change frequently so I can't hard code this. I'm running a query against the AWS API, and pulling down backups. I am trying to get these backups in a list then get these in a dropdown to submit in a form. forms.py class RestoreAMIForm(forms.ModelForm): ami = forms.ChoiceField() def __init__(self, *args, **kwargs): super(RestoreAMIForm, self).__init__(*args, **kwargs) self.fields['server_name'].widget.attrs['readonly'] = True self.fields['module_name'].widget.attrs['readonly'] = True self.fields['instance_id'].widget.attrs['readonly'] = True class Meta: model = RestoreRequest fields = ['server_name', 'module_name', 'instance_id', 'ami', 'justification'] views.py amis = helper_functions.get_all_backups(instance_id, GlobalrunEnv) context['ami'] = amis just_amis = [i[0] for i in context['ami']] formatted_picker = helper_functions.iterate_over_list(just_amis) context['restore_ami_form'] = RestoreAMIForm(initial={'server_name': context['tags']['Name'], 'instance_id': context['server_details']['InstanceId'], 'module_name': context['passed_slug'], 'ami': formatted_picker, }) html <form action="{% url 'instance_details' passed_slug %}" method="post"> <p class="standout"> Revert to Snapshot:</p> <table> {{ restore_ami_form.as_table }} </table> <div class="buttonHolder"> <button name="RevertRequest" value="{{ GlobalrunEnv }}">Submit New Values</button> </div> </form> the output of format_picker is... [('1', 'ami-04e05d8b305348d89'), ('2', 'ami-0f82b7ac27bdeb246'), ('3', 'ami-0eed0d484f0d61391'), ('4', 'ami-071cfbc9eda4cae4d'), ('5', 'ami-0dc61e733721e7e7a'), ('6', 'ami-05ba2995c14da2502'), ('7', 'ami-01cb5e766d77f8ecb')] my read only fields are working. Is is possible to provide initial= values for choice fields? -
Django complex filter with two tables
I am in need of some help. I am struggling to figure this out. I have two models class Orders(models.Model): order_id = models.CharField(primary_key=True, max_length=255) channel = models.CharField(max_length=255, blank=True, null=True) def __str__(self): return str(self.order_id) class Meta: managed = False db_table = 'orders' class OrderPaymentMethods(models.Model): id = models.CharField(primary_key=True, max_length=255) payment_type = models.CharField(max_length=75, blank=True, null=True) fk_order = models.ForeignKey('Orders', models.DO_NOTHING, blank=True, null=True) class Meta: managed = False db_table = 'order_payment_methods' My goal is to count the number of orders that have a OrderPaymentMethods specific payment_type Example: orders = Orders.object.filter(Q(channel="Green_House")) method_money = orders.filter(payment_methods = "credit").count() How can I get the count based on the orders that were filtered? Thank You -
Create sub category using jquery ajax when selecting a category in Django
I have a problem that when I select a category, sub categories are not showing or showing default option only. I want to show sub-categories about what the user category selected. This is my html code <div class="container pt-5" style="height: 800px !important;"> <div class="mx-auto" style="width: 500px" ;> <form id="form" action="../message/" method="post" name="contactForm" class="form-horizontal" data-subCat-url="{% url 'ajax_load_subCats' %}"> {% csrf_token%} <div class="col-xs-8 col-xs-offset-4 mt-5"> <h2 style="text-align:center;">Contact</h2> </div> <div class="form-group"> <label class="p-2" for="title">Title</label> <input type="title" class="form-control" name="text" id="title" placeholder="Enter A Title" required="required"> </div> <div class="form-group"> <label class="p-2" for="category">Category</label> <select class="form-select" aria-label="Default select example" id="category" required> <option selected>Select a category</option> <option value="theft">Theft</option> <option value="assault">Assault</option> <option value="accident">Accident</option> <option value="fire">Fire</option> </select> </div> <div class="form-group"> <label class="p-2" for="category">Sub Category</label> <select id="subCat" class="form-select" aria-label="Default select example" required> </select> </div> <div class="form-group"> <label class="p-2" for="subject">Subject</label> <textarea type="text" class="form-control" name="subject" cols="30" rows="10" placeholder="Enter Subject" required="required"></textarea> </div> <button type="submit" class="btn btn-primary float-end mt-2">Send</button> <br /> <div class="form-group"> {% for message in messages %} <div class="alert alert-danger" role="alert"> {{message}} </div> {% endfor %} </div> </form> </div> </div> I didn't add html tags like body, head, html, so the problem is not there. This is my Jquery script $(document).ready(function(){ $("#category").change(function(){ const url = $("#form").attr('data-subCat-url'); const catName = $(this).children("option:selected").val(); console.log(url) console.log(catName) $.ajax({ url: … -
How to use some variable that call a function to put inside of HTML template in DJANGO
I need to use that function below, here is in util.py try: f = default_storage.open(f"entries/{title}.md") return f.read().decode("utf-8") except FileNotFoundError: return None ``` Then I put that in my views.py with the var "get" def getFunction(request): return render(request, "encyclopedia/index.html", { "get": util.get_entry() }) So I want to use that function in my index.html {% block body %} <h1>All Pages</h1> <ul> {% for entry in entries %} <a href="{% get %}"><li>{{ entry }}</li></a> //{% get %} doesn't work {% endfor %} </ul> {% endblock %} The only for is to show up a list with 5 items and inside of li, using entry I can display all five items (e.g: apple, banana, tomato, pear, grape) I need to use href because When I click it will to another folder/file .md that will be writed about apple for example I wanna use that function to take in my file .md If you need more informations just ask me. thank u. :) -
Get url param in django
I have this view: @login_required def newAnswer(request, id): post = Post.objects.get(id=id) form = AnswerForm(request.POST) if request.method == 'POST': if form.is_valid(): obj = form.save(commit=False) obj.author = request.user obj.post = post obj.save() form.save_m2m() return redirect('main:post', id=post.id) else: return render(request, 'main/newAnswer.html', { 'form': form, 'formErrors': form.errors, 'userAvatar': getAvatar(request.user)}) else: return render(request, 'main/newAnswer.html', {'form': form, 'post': post, 'userAvatar': getAvatar(request.user)}) When i try to post without loging in, it redirects me to "/accounts/login?next=/post/answer/new/81". My question is how can i get the "next" param in my login view thanks! -
Using a websocket to send messages between two users, but only one user is sending
Highlevel I would like to redirect pairs of users to different rooms. Implementation I am doing this by connecting both matched users to a websocket. Upon connecting each user should send a message to the other user along with the roomID that I will be redirecting the users to. The current issue is that only the user who connects to the websocket last sends a message to the first user and not vice versa Desired Action This is the desired action UserA connects to the websocket UserB connects to the websocket UserA sends back to UserB, UserB's user_id, along with the roomID UserB sends back to UserA, UserA's user_id, along with the roomID This is what is currently happening UserA connects to the websocket UserB connects to the websocket UserB sends back to UserA, UserA's user_id, along with the roomID Here is my frontend code: ... connect() { const args = JSON.parse(localStorage.getItem('authTokens')) const queryString = args.refresh const path = `ws://127.0.0.1:8000/connect/testing/?${queryString}`; this.socketRef = new WebSocket(path); this.socketRef.onopen = (data) => { console.log('WebSocket open'); } this.socketRef.onerror = e => { console.log(e); }; } async sendData(data){ if(this.socketRef.readyState !== WebSocket.OPEN) { console.log('we are still waiting') this.socketRef.onopen = () => this.socketRef.send(data); const socketResp = await new … -
Null value in column "user_id" of relation "authentication_junioruser" violates not-null constraint
I'm trying to do POST request and getting error: IntegrityError at /accounts/juniorprofile/ null value in column "user_id" of relation "authentication_junioruser" violates not-null constraint DETAIL: Failing row contains (14, Ms K, Vadim, t, 99999999, , null, , 2022-10-23, , DevOps, , , set(), , null, null). Junior User is inherited from the custom User model class ListCreateUserProfile(generics.ListCreateAPIView): queryset = JuniorUser.objects.all() serializer_class = JuniorProfileSerializer views.py class JuniorProfileSerializer(serializers.ModelSerializer): location = LocationSerializer(read_only=True, many=True) language = serializers.MultipleChoiceField(choices=LANGUAGE) work_experience = ExperienceSerializer(read_only=True, many=True) education = EducationSerializer(read_only=True, many=True) course = CourseSerializer(read_only=True, many=True) class Meta: model = JuniorUser fields = ['id', 'terms_is_accepted', 'first_name', 'last_name', 'phone_number', 'telegram_nick', 'linkedin', 'location', 'profile_photo', 'date_of_birth', 'specialization', 'hard_skills', 'soft_skills', 'language', 'work_experience', 'education', 'course', 'other_info', 'portfolio_link'] serializers.py class JuniorUser(models.Model): """ This model points to an instance of User model and expands that one to determine the role of Junior User. All the class attributes was got from the technical requirements 'Registration form' """ user = models.OneToOneField(User, on_delete=models.CASCADE, related_name="junior") first_name = models.CharField(max_length=50, blank=False) last_name = models.CharField(max_length=50, blank=False) ... def __str__(self): return str(self.user) if self.user else '' models.py -
Social Network Login Failure For Twitter
I'm trying to integrate Django Social Authentication for Twitter everything is working fine but when I click to login with twitter it redirecting me to a page saying. Redirecting you back to the application. This may take a few moments. After that... Social Network Login Failure An error occurred while attempting to login via your social network account. Login with twitter page Social Network Login Failure page Social Network Login Failure PAGE URL: http://127.0.0.1:8000/accounts/twitter/login/callback/?oauth_token=2iC_EQAAAAABhMevAAABg4CH1lM&oauth_verifier=Yo9Yd8uuASo92R06tDU8dmoLf8fWawje what's wrong here CORRECT me! -
Django getting data in my template from session(dictionary)
how do I get the other itens from my session in django and im passing the session as a dictionary in my cart_page.html my session: {'3': {'quantity': 1, 'price': 4.0, 'totalitem': '4.00'}, '1': {'quantity': 1, 'price': 30.0, 'totalitem': '30.00'}} view.py: return render(request, 'cart/cart_page.html', {'itens': itens}) but when I do: {% for item in itens %} {{item}} {% endfor %} in my {{item}} it only has 3 and 1, how to I get the quantity and price inside it? -
Django Multiple Form on same page interact with each other
I have a page with two forms. When I click on the button Update Profile on the left Form it also send the POST request to the the second form which is not what I want. I don't want them to interact together. How can I do that? views.py @login_required(login_url='signin') def dashboard(request): global user_id data = Account.objects.filter(user=request.user) profile_data = Profile.objects.get(user=request.user) profile_form = ProfileForm(request.POST or None, instance=profile_data) addaccount_form = AddAccountForm(request.POST or None) # Update Profile Settings if profile_form.is_valid(): print("worked") profile_form.save() if request.method == "POST": if addaccount_form.is_valid(): # save account to DataBase return HttpResponseRedirect("http://127.0.0.1:7000/dashboard/") context = { 'data': data, 'profile_form': profile_form, 'addaccount_form': addaccount_form, } return render(request, "main/dashboard.html", context) dashboard.html <form action="" method="POST"> {% csrf_token %} {{profile_form}} <button type="submit" class="updatebut">Update Profile</button> </form> <form action="" method="POST"> {% csrf_token %} {{addaccount_form}} <button type="submit" class="addbut">Add Account</button> </form> -
How do I save my Gist script tag in Ckeditor?
Quick question. I try to post the script to a Gist in Ckeditor, in my Django website. Whenever I post the < script > in the editor, it just shows up as raw code. My work around for this was editing the raw file, inserting the < script >. Which worked, except for some reason if I need to alter anything else in the code I have to reinsert it again. Any workaround for this? I was using the codeblocks feature of ckeditor, but I like the formatting of embedded gists better because it shows line numbers, etc. -
request.data is different in runserver and uwsgi
I'm sending a post request to server. I use runserver to test and I use uwsgi inside docker as well. When I use request.data to serialize the object, it works fine in run server. The output data is like [enter image description here][1] But when I use uwsgi in docker-omposer up and use the same request.data it is different. This causes it not to store in DB. [enter image description here][2] Can someone explain what is wrong here? Thanks [1]: https://i.stack.imgur.com/oFVpz.png [2]: https://i.stack.imgur.com/T6sIf.png