Django community: RSS
This page, updated regularly, aggregates Django Q&A from the Django community.
-
Django Aggregation Question - Strange behavior
I have a query set of activities which has an associated user_id on on that model. In this example, I have a query set containing the below based on this statement activities.values('user_id').annotate(Min('duration')) [ {'user_id': 149026, 'duration__min': Decimal('480.0000')}, {'user_id': 149026, 'duration__min': Decimal('454.0000')}, {'user_id': 149026, 'duration__min': Decimal('360.0000')}, {'user_id': 149027, 'duration__min': Decimal('420.0000')} ] I need to grab the activity for each user_id that has the lowest duration. I'm a bit confused as to why the following statement below returns to me what I want activities.values('user_id').annotate(Min('duration')).order_by('user_id') [ {'user_id': 149026, 'duration__min': Decimal('360.0000')}, {'user_id': 149027, 'duration__min': Decimal('420.0000')} ] Why would the order_by("user_id") clause return me the lowest duration activity for a specific user. Also, shouldn't the value clause preceding the annotate lead the returned query to have one annotated result for each unique user_id? -
Is this intended order of operations for this Django template tag conditional correct?
In basic terms, this is the what I am looking for {% if not A or (B and C == D) %} In a Django template tag (unable to use parentheses), is this the same result? {% if not A or B and C == D %} Thank you! -
When migrating Django to deployment i get this error why?
On my local machine there is no issue. Everything runs perfectly. Even python manage.py check --deploy brings up no issues on my local . But when I run makemigrations on my external server for deployment it gives me this error: Traceback (most recent call last): File "/opt/pyapps/venv/lib/python3.8/site-packages/django/db/backends/utils.py", line 86, in _execute return self.cursor.execute(sql, params) psycopg2.errors.UndefinedTable: relation "Report_report" does not exist LINE 1: SELECT "Report_report"."id" FROM "Report_report" ORDER BY "R.. https://pastebin.com/L0waK5Nq -
Django Channels Websocket group name
Sorry for bad English :( I want to create notification system per user. User has own group/room and every notification go to specific user's notification room. Every time when user connect to websocket, user creates the same id of user. self.scope["user"]. Therefore only user_notification_1 group name was created. How it is possible to create group name depending on user? I use application = ProtocolTypeRouter( { "websocket": AuthMiddlewareStack(URLRouter(websocket_urlpatterns)), } ) Code: import json from channels.generic.websocket import WebsocketConsumer class NotificationConsumer(WebsocketConsumer): async def connect(self): self.user = self.scope["user"] if self.user.is_authenticated: self.room_group_name = f"user_notification_{self.user.id}" else: self.room_group_name = "anonymous" await self.channel_layer.group_add(self.room_group_name, self.channel_name) await self.accept() async def disconnect(self, close_code): await self.channel_layer.group_discard(self.room_group_name, self.channel_name) async def receive(self, text_data=None, bytes_data=None): self.user = self.scope["user"] if self.user.is_authenticated: await self.send( text_data=json.dumps({"message": "pong"}) ) else: await self.send( text_data=json.dumps({"type": "error", "code": "UserNotAuthenticated"}) ) async def new_chat_message(self, event): await self.send(text_data=json.dumps(event.get("data"))) async def connect_successful(self, event): await self.send(text_data=json.dumps(event.get("data"))) -
Access ManyToMany relation from model property in Django
I have a Loan model that has some relationships, one of which is a many to many with a Resource model (the items our borrower is loaning). I'd like to add a derived property to the loan that does a quick check on the status of the loan's various resources. But whenever I try to access the loan's resources from within this property, I just get back None. It works fine for the one to one relationships, just not many to many. class Loan(models.Model): borrower = models.ForeignKey('Borrower', on_delete=models.PROTECT) resources = models.ManyToManyField('Resource', through='LoanedResource', blank=True) start_date = models.DateTimeField() due_date = models.DateTimeField() @property def is_closed(self): print(self.borrower) # Works! print(self.resources) # None :( print(self.loanedresources_set) # None :( print(LoanedResource.objects.filter(loan = self.id)) # This works, but I believe it bypasses prefetch_related, so gets really slow. # Return my calculated value here If this can't work, anyone have ideas on how to create derived property with many to many relationship that takes advantage of prefetch_related? Thanks! -
django: how to merge a class based view with a function based view
for some reason i wanted to use the django class based form view "PasswordResetView" in my template that already has a function based view which is the home view, so i thought that i should copy paste the "PasswordResetView" from django's source code in my views.py file and change what is needed but i always face some errors because i'm not familiar with class based views here is my view in my views.py file: def home(request): user = request.user signin_form = SigninForm() signup_form = SignupForm() if 'signin_form' in request.POST: signin_form = SigninForm(request.POST) if signin_form.is_valid(): email = request.POST['email'] password = request.POST['password'] user = authenticate(email=email, password=password) if user: login(request, user) elif user is None: messages.error(request, 'ُEmail or password is incorrect') if 'signup_form' in request.POST: signup_form = SignupForm(request.POST) if signup_form.is_valid(): signup_form.save() full_name = signup_form.cleaned_data.get('full_name') email = signup_form.cleaned_data.get('email') raw_password = signup_form.cleaned_data.get('password1') account = authenticate(email=email, password=raw_password) login(request, account) context = {'signin_form': signin_form,'signup_form': signup_form} return render(request, 'main/home.html', context) here is the "PasswordResetView" from django's source code: from django.urls import reverse, reverse_lazy from django.contrib.auth.tokens import default_token_generator from django.views.generic.edit import FormView from django.views.decorators.csrf import csrf_protect from django.utils.decorators import method_decorator class PasswordContextMixin: extra_context = None def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) context.update({ 'title': self.title, **(self.extra_context or {}) }) return … -
Permission clashes with a builtin permission [django-audiofield]
I'm trying make audiofield with django-audiofield... in my model.py i have import os from audiofield.fields import AudioField from django.conf import settings from django.db import models class AudioFile(models.Model): name = models.CharField(max_length=150, blank=False, verbose_name=('audio name'), help_text=('audio file label')) audio_file = AudioField(upload_to='upload/audiofiles', blank=True, ext_whitelist=('.mp3', '.wav', '.ogg'), verbose_name=('audio file')) def audio_file_player(self): if self.audio_file: file_url = settings.MEDIA_URL + str(self.audio_file) player_string = '<ul class="playlist"><li style="width:250px;">\ <a href="%s">%s</a></li></ul>' % (file_url, os.path.basename(self.audio_file.name)) return player_string audio_file_player.allow_tags = True audio_file_player.short_description = ('Audio file player') class Meta: permissions = ( ('can_view_audiofile', ('Can see AudioFiles')), ) But all the time I have ERROR: *ERRORS: audiofield.AudioFile: (auth.E005) The permission codenamed 'view_audiofile' clashes with a builtin permission for model 'audiofield.AudioFile'.* This Meta class in model is from documentation django-audiofield and I installed all apps in settings. -
psycopg2.errors.UndefinedTable: relation "sso_server_consumer" does not exist
I am working on implementing Django-Simple-SSO to our python based platform. I am following this blog to implement SSO: https://medium.com/@MicroPyramid/django-single-sign-on-sso-to-multiple-applications-64637da015f4 This code is the step number 3 on the server side of django-simple-sso. from simple_sso.sso_server.models import Token, Consumer Consumer.objects.create(public_key='your_application_public_key', private_key='your_application_private_key', name='your_application_name') psycopg2.errors.UndefinedTable: relation "sso_server_consumer" does not exist -- this is the error I am getting as soon as I run the above code in django shell. Can someone please help me on how to solve this error? Thank you -
Not able to install sqlite on MAC for python project
I am trying to install sqlite browser on my MAC.Its installed successfully but after I am opening it ,MAC gives me error " “DB Browser for SQLite” can’t be opened because Apple cannot check it for malicious software. This software needs to be updated. Contact the developer for more information. I am downloading from sqlitebrowser.org website.But still failed.I checked different YouTube videos for MAC version but didn't help.Its little urgent for my Python Project. when I checked on terminal for Sqlite version then it gives me 3.28.0 -
Django Date/Time Enter a Valid Date/Time Form validation
When submitting a form I keep getting Enter a valid date/time The code forms.py class LessonsForm(forms.ModelForm): class Meta: model = models.Lessons # datetime-local is a HTML5 input type, format to make date time show on fields widgets = { 'start_of_lesson': DateInput(attrs={'type': 'datetime-local'}, format='%Y-%m-%dT%H:%M'), 'end_of_lesson': DateInput(attrs={'type': 'datetime-local'}, format='%Y-%m-%dT%H:%M'), } fields = '__all__' def __init__(self, *args, **kwargs): super(LessonsForm, self).__init__(*args, **kwargs) # input_formats to parse HTML5 datetime-local input to datetime field self.fields['start_of_lesson'].input_formats = ['%Y-%m-%dT%H:%M'] self.fields['end_of_lesson'].input_formats = ['%Y-%m-%dT%H:%M'] settings.py DATE_INPUT_FORMATS = ["%d/%m/%Y", "%d-%m-%Y", '%Y-%m-%d', '%Y/%m/%d', '%Y-%m-%dT%H:%M', '%Y/%m/%dT%H:%M', '%d-%m-%Y %H:%M', '%d/%m/%Y %H:%M', '%d/%m/%YT%H:%M', '%d-%m-%YT%H:%M',] DATE_FORMAT = "d/m/Y" DATETIME_FORMAT = "d/m/Y H:i" TIME_FORMAT = "H:M" I feel like I have messed around with the input formats everywhere and changed them to everything but it just won't validate when I save the form start_of_lesson = forms.DateTimeField(input_formats = ['%d/%m/%Y'], widget=forms.DateTimeInput(attrs={'class':'form-control form-control-lg','type':'datetime-local'})) Is an example of something I have tried. -
ElasticSearch Suggester full-text-search
I'm using django_elasticsearch_dsl. My Document: html_strip = analyzer( 'html_strip', tokenizer='standard', filter=["lowercase", "stop", "snowball"], char_filter=["html_strip"] ) class Document(django_elasticsearch_dsl.Document): name = TextField( analyzer=html_strip, fields={ 'raw': fields.KeywordField(), 'suggest': fields.CompletionField(), } ) ... My request: _search = Document.search().suggest("suggestions", text=query, term={'field': 'name.suggest'}).execute() I have the following document "names" indexed: "This is a test" "this is my test" "this test" "Test this" Now if search for This is my text if will receive only "this is my text" However, if I search for test, then all I get is "Test this" Even though I want all documents, that have test in their name. What am I missing? -
Knowing when's best to use Wagtail Pages or Django Models for Wagtail website
I am making a website running wagtail as the CMS/backend and use Page for things that are actual web pages on the site. In addition to this I will need an Events section and I am unsure whether to make it as a Wagtail Page or Django models.Model. The way I would like this to work for the user is to have an Events section in the admin panel using ModelAdmin so that the user can easily find and navigate to all Events, and, for those events to be displayed in various sections of the site - Home Page, Events Page, Article Page for example. I think using Page for this and requiring the user to navigate to it (Home > Events Listing > Event Detail) each time is rather a waste of time and cumbersome as opposed to having it use ModelAdmin paired with Django models.Model and that being 1 or 2 clicks away. Reading through my question it's obvious I am leaning towards using Django model for this, so my question is: what is the trade-off between the two? Is there a set use case for using one or the other? Would using one mean having more/less functionality … -
Pass variable which consists the name of the function to call, onclick="location.href='{% url '{{var}} ' %}'"?
I am trying to built a Port Scanner website on django. Problem Statement: What I need is the User will be selecting anyone of the radio button (full Scan or Quick Scan) and after that when the user click on Start Now button, that python function should be called from urls.py of views.py which the radio button holds the value of. I saw on the internet that functions of views.py can be called using onclick="location.href='{% url ' radio value variable ' %}'" from the templates but nothing passing radiobuttons value at url ' ' base.html <form id="suggestion_form" name="gs" method="get" action="home"> <div class="searchText"> <input type="text" name="q" class="searchText" placeholder="{% block title %} {% endblock %}" readonly="readonly"> <ul> <li><label><input type="radio" name="ext_com" value="Full Scan"><span>Full Scan</span></label></li> <li><label><input type="radio" name="ext_com" value="Quick Scan"><span>Quick Scan</span></label></li> </ul> </div> <input type="submit" name="results" class="main-button" value=" Start Now " onclick="location.href='{% url ' radio value variable ' %}'"> </form> urls.py from django.conf.urls import url from . import views urlpatterns = [ url('',views.home), url('',views.fullscan,name="fullscan"), url('',views.quickscan,name="quickscan"), ] views.py ..... def fullscan(): If fullscan radio button is selected then this should be called an output will be rendered def quickscan(): If quickscan radio button is selected then this should be called an output will be rendered -
updating a model with respect to a field django
I m doing a bet app and if the admin verify the screenshot sent by the won he will set the verified field to be true . this is how both the models look like : class ScreenshotVerification(models.Model): user = models.ForeignKey(settings.AUTH_USER_MODEL,on_delete=models.CASCADE,related_name="screenshot") user_accepted_bet =models.ForeignKey(AcceptBet,on_delete=models.CASCADE,related_name='screenshotPost') user_bet =models.ForeignKey(CreateBet,on_delete=models.CASCADE,related_name='screenshotBet') screenshot_img = models.ImageField(upload_to = 'media/screenshot',blank = True) created_at = models.DateTimeField(auto_now=True) verified = models.BooleanField(default=None) class Won(models.Model): won_user = models.ForeignKey(settings.AUTH_USER_MODEL,on_delete=models.CASCADE,related_name="won_user") loss_user = models.ForeignKey(settings.AUTH_USER_MODEL,on_delete=models.CASCADE,related_name="loss_user") created_time = models.DateTimeField(auto_now=True) so whenever verified field set to true I want the value of won_user and loss_user to be automatically be created thanq in advance . -
Can I run a django view function automatically?
Is this possible to run a django view function automatically daily after deploying it on heroku.? I mean.. I have a database where I have datefield. I have a view function, which matches that date with today's date and sends an email. Is it possible..that view function runs daily automatically and matches the dates and does the task.?? -
how to action djago button
I am developing to provide face recognition automatic door service in django by receiving images from a raspberry camera to a computer. I want to capture the screen displayed in django when I click the button in the picture below, but I don't know how to write view.py. Help me.. enter image description here this is picamera code import socket import cv2, os, urllib.request import numpy as np from django.conf import settings #from django.apps import AppConfig face_detector = cv2.CascadeClassifier(r'C:\Users\Desktop\University\last\django\face_project\picamera\haarcascade_frontalface_default.xml') global frame, gray #socket에서 수신한 버퍼를 반환하는 함수 def recvall(sock, count): # 바이트 문자열 buf = b'' while count: newbuf = sock.recv(count) if not newbuf: return None buf += newbuf count -= len(newbuf) return buf class streaming_pi_camera(object): def __init__(self): HOST='my_ip' PORT=8485 #TCP 사용 global s s=socket.socket(socket.AF_INET,socket.SOCK_STREAM) #서버의 아이피와 포트번호 지정 s.bind((HOST,PORT)) # 클라이언트의 접속을 기다린다. (클라이언트 연결을 10개까지 받는다) s.listen(10) print('Socket Ready') #연결, conn에는 소켓 객체, addr은 소켓에 바인드 된 주소 global conn conn,addr=s.accept() def __del__(self): conn.close() s.close() cv2.destroyAllWindows() def get_frame(self): while True: # client에서 받은 stringData의 크기 (==(str(len(stringData))).encode().ljust(16)) length = recvall(conn, 16) stringData = recvall(conn, int(length)) #data = np.fromstring(stringData, dtype = 'uint8') frame = cv2.imdecode(np.fromstring(stringData, dtype=np.uint8),cv2.IMREAD_COLOR) #face detector and label gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY) faces_detected = face_detector.detectMultiScale(gray, scaleFactor=1.3, minNeighbors=5) for … -
I'm having a program when I'm trying to run my server it's a pretty simple server because I'm quite new with Django
This is the error I get: django.core.exceptions.ImproperlyConfigured: Specifying a namespace in include() without providing an app_name is not supported. Set the app_name attribute in the included module, or pass a 2-tuple containing the list of patterns and app_name instead. I tried removing the include() function but I still get the error, what should I do? Here is the code: This is the main urls.py: from django.conf.urls import include, url from django.contrib import admin urlpatterns = [ url(r'^admin/', admin.site.urls), url(r'', include('learning_logs.urls', namespace='learning_logs')), This is the secondary: from django.conf.urls import url from . import views urlpatterns = [ # Home page url(r'^$', views.index, name='index'), ] -
NameError : name 'xxx' is not defined in plotly_dash
I am new to programming and still learning the basics of it. I am building a dashboard using plotly dash and I get error as "NameError: name 'plot_data_raw' is not defined" Below is the code: Preprocessing.py (file) def import_agg(days=100): ... ... return dff def import_pda(days=100): ... ... return dff def filter_clearcoat(dff_agg, dff_pda): ... ... return dff_agg def moving_average(dff, cols, dt=30, wsize=9, iqr=90): ... ... return dff def main(days_data=5, days_mean=30, features=['d_50', 'N']): df_agg = import_agg(days_mean) df_agg = df_agg.rename(columns={'LocalTS': 'Timestamp'}) df_agg['Timestamp'] = [x[:19] for x in df_agg['Timestamp']] df_agg['Timestamp'] = df_agg['Timestamp'].apply(pd.Timestamp) # --- import pda: ----------------------------------------------------------------------- df_pda = import_pda(days_mean) df_pda = df_pda.rename(columns={'ZeitErw': 'Timestamp'}) # --- filter droplet number: ------------------------------------------------------------ df_agg = df_agg.loc[df_agg['N']!=0] # --- filter clearcoat type: ------------------------------------------------------------ df_agg = filter_clearcoat(df_agg, df_pda) # --- smoothe: -------------------------------------------------------------------------- df_agg_sm = moving_average(df_agg, features) # --- prepare output (plot data): ------------------------------------------------------- is_in_range = df_agg['Timestamp'] >= (pd.Timestamp.now()-pd.Timedelta(days_data, 'days')) plot_data_raw = df_agg.loc[is_in_range, ['Timestamp']+features].copy() plot_data_smoothed = df_agg_sm.loc[is_in_range, ['Timestamp']+features].copy() # --- prepare output (percentiles & mean): ---------------------------------------------- plot_parameters = pd.DataFrame(columns=features) plot_parameters.loc['pct75'] = [df_agg[x].quantile(q=0.75) for x in features] plot_parameters.loc['mean'] = [df_agg[x].mean() for x in features] plot_parameters.loc['pct25'] = [df_agg[x].quantile(q=0.25) for x in features] # --- output: --------------------------------------------------------------------------- return plot_data_raw, plot_data_smoothed, plot_parameters I want to plot this data on a graph from another file. … -
How to filter a queryset in django by excluding with two parameters
I have a view in django that looks as follows: class ExploreListingView(generics.ListAPIView): serializer_class = ListingSerializer permission_classes = [permissions.IsAuthenticated] def get_queryset(self): return Listing.objects.exclude(user=self.request.user, claimed=True) The result I expect is to filter out any listings that are assigned with the current user and are claimed, however the filter doesn't work, but when I remove either parameter it works just fine. How do I exclude it so I can use more than one parameter. -
How can i call the fields of a foreignkey in the template html django
how can i call the movie_details and actor fields or variables from the MovieDetail class in the model.py to my html template. Thank you very much i am new to django will be loving solutions from here. Models.py from django.db import models from datetime import datetime # Create your models here. class MoviePosters(models.Model): image = models.ImageField(upload_to = "pics") Title = models.CharField(max_length=50) Description = models.CharField(max_length = 150) class MovieSection(models.Model): image_side = models.ImageField(upload_to = "pics") title_side = models.CharField(max_length=50) movie_link = models.CharField(max_length=20) class meta: verbose_name_plural = "Section" def __str__(self): return self.title_side class MovieDetails(models.Model): movie_section = models.ForeignKey(MovieSection, on_delete= models.CASCADE) movie_details = models.CharField(max_length= 200) actors = models.CharField(max_length= 200) class meta: verbose_name_plural = "movie_details" def __str__(self): return self.movie_details Views.py from django.shortcuts import render from django.http import Http404 from django.http import HttpResponse from .models import MoviePosters, MovieSection,Ticket, MovieDetails def single_link(request, single_link): movie_details = MovieSection.objects.get(pk=single_link) return render(request, "reviewmovie.html", {"part_ones": movie_details}) -
TypeError: Abstract base class containing model fields not permitted for proxy model 'TokenProxy'
Can anyone help me with this error. I got this error when I was adding new app in my project and tried to run python manage.py makemigrations After that when I couldn't solve it then I decided to start from 0. I deleted all migration file from all apps except init.py Then created a new postgresql server. but when I run python manage.py makemigrations This error is still there. (backend-T2FJqQ31) C:\Users\Rahul\Desktop\reactblog\backend>python manage.py makemigrations Traceback (most recent call last): File "manage.py", line 22, in <module> main() File "manage.py", line 18, in main execute_from_command_line(sys.argv) File "C:\Users\noob\.virtualenvs\backend-T2FJqQ31\lib\site-packages\django\core\management \__init__.py", line 401, in execute_from_command_line utility.execute() File "C:\Users\noob\.virtualenvs\backend-T2FJqQ31\lib\site-packages\django\core\management\__init__.py", line 395, in execute self.fetch_command(subcommand).run_from_argv(self.argv) File "C:\Users\noob\.virtualenvs\backend-T2FJqQ31\lib\site-packages\django\core\management\base.py", line 330, in run_from_argv self.execute(*args, **cmd_options) File "C:\Users\noob\.virtualenvs\backend-T2FJqQ31\lib\site-packages\django\core\management\base.py", line 368, in execute self.check() File "C:\Users\noob\.virtualenvs\backend-T2FJqQ31\lib\site-packages\django\core\management\base.py", line 392, in check all_issues = checks.run_checks( File "C:\Users\noob\.virtualenvs\backend-T2FJqQ31\lib\site-packages\django\core\checks\registry.py", line 70, in run_checks new_errors = check(app_configs=app_configs, databases=databases) File "C:\Users\noob\.virtualenvs\backend-T2FJqQ31\lib\site-packages\django\core\checks\urls.py", line 13, in check_url_config return check_resolver(resolver) File "C:\Users\noob\.virtualenvs\backend-T2FJqQ31\lib\site-packages\django\core\checks\urls.py", line 23, in check_resolver return check_method() File "C:\Users\noob\.virtualenvs\backend-T2FJqQ31\lib\site-packages\django\urls\resolvers.py", line 408, in check for pattern in self.url_patterns: File "C:\Users\noob\.virtualenvs\backend-T2FJqQ31\lib\site-packages\django\utils\functional.py", line 48, in __get__ res = instance.__dict__[self.name] = self.func(instance) File "C:\Users\noob\.virtualenvs\backend-T2FJqQ31\lib\site-packages\django\urls\resolvers.py", line 589, in url_patterns patterns = getattr(self.urlconf_module, "urlpatterns", self.urlconf_module) File "C:\Users\noob\.virtualenvs\backend-T2FJqQ31\lib\site-packages\django\utils\functional.py", line 48, in __get__ res = instance.__dict__[self.name] = self.func(instance) … -
Add csv data uploaded from user file to django models
Sorry if it's a silly question, but I can't find a simple/up-to-date way of populating Django models from a .csv file updated on the frontend (React) by the user. I manage to send the uploaded file from react frontend to the backend using axios, I can catch the file on the backend, but I dont know the proper way to populate the model with the csv data... Thanks!! App.js // frontend/src/App.js import React, { Component } from "react"; import axios from "axios"; import { Button, FormGroup, Form } from "react-bootstrap"; class App extends Component { handleFile = (event) => { event.preventDefault(); const fileToUpload = event.target.files[0]; this.setState({ fileToUpload: fileToUpload, }); }; handleSubmitData = (event) => { event.preventDefault(); let formData = new FormData(); formData.append("file", this.state.fileToUpload); axios .post("data/", formData) .then((response) => { console.log(response); }) .catch((error) => { console.log(error.response); }); }; render() { return ( <main className="content"> <h1 className="text-white text-uppercase text-center my-4"> Price comparison </h1> <form onSubmit={this.handleSubmitData}> <FormGroup> <Form.Label>Upload file</Form.Label> <Form.Control type="file" onChange={this.handleFile}></Form.Control> </FormGroup> <Button block bssize="large" type="submit"> Submit </Button> </form> </main> ); } } export default App; models.py from django.db import models class Data(models.Model): city = models.CharField(max_length=200, null=True) wheel_type = models.CharField(max_length=200, null=True) order_status = models.CharField(max_length=200, null=True) order_ID = models.IntegerField(null=True) client_ID = models.IntegerField(null=True) placed_time … -
Django, smart-select, chained select doesn-t work from html
I try to use chained select (smart-select), it works from the admin panel, but doesn't work from template (html). settings: JQUERY_URL = False USE_JQUERY_DJANGO = True html: <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>{% block title%}{% endblock %}</title> <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css"> <link rel="stylesheet" href="{% static 'main/css/main.css'%}"> <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.8.2/css/all.css"> <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script> <script src="{% static 'smart-selects/admin/js/bindfields.js' %}"></script> <script src="{% static 'smart-selects/admin/js/chainedfk.js' %}"></script> <script src="{% static 'smart-selects/admin/js/chainedm2m.js' %}"></script> </head> class Tasks(models.Model): type = models.ForeignKey(TypeServices,on_delete=models.CASCADE,default='0') site = ChainedForeignKey( Services, chained_field="type", chained_model_field="type", show_all=False, sort=True) -
Django deployment with required temporary model data
First of all, I am very new to deployment. I have built a new newspaper project using Django in my windows machine. It runs fine in localhost. Now I want to deploy it in pythonanywhere. I am using the default db.sqlite3 as my database. But in production, I am going to use MySql, (for which they have easy settings and support) Problem: As a newspaper, my website needs a lot of specialized filtering. To find a single value I had to, sometimes, use list indexing on filtered data like-(inside get context data): context['main_lead_news']=SingleNews.objects.filter( published_date__lte=timezone.now(), news_extras__icontains='main_lead_news').order_by('-published_date')[0] As you can see if 'filter' does not find anything, it will raise an error as- List index out of range. Overall, my code will break without any temporary model data( currently, though most of them are lorem ipsum.) I have populated them before my code was complete. now, how can I deploy my project, as I may not have a chance to populate them online again because of those errors.also my debug will be false, it will be near impossible to run my code without finding errors! I have two (half!) ideas- 1.somehow upload the sqlite3 database when deploying, then after configuring MySQL, transfer … -
Django use only one column of Model1 as a foreign key in second model
I have two Django Models (Events and GMSEvents). I want to use the eventAcronym of Events model as a foreign key in GMSEvents. I tried as below, but I get the error AssertionError: ForeignKey(<django.db.models.query_utils.DeferredAttribute object at 0x000002032DA1E8C8>) is invalid. First parameter to ForeignKey must be either a model, a model name, or the string 'self' Models class Events(models.Model): eventAcronym = models.CharField(max_length=4, blank=False, null=False) eventName = models.CharField(max_length=30, blank=False, null=False) def __str__(self): return f"{self.eventAcronym} - {self.eventName}" class GMSEvents(models.Model): gateNo = models.IntegerField(blank=False, null=False) aircraftName = models.CharField(max_length=15, blank=False, null=False) detectEvent = models.ForeignKey(Events.eventAcronym, on_delete=models.CASCADE) timeStamp = models.DateTimeField()