Django community: RSS
This page, updated regularly, aggregates Django Q&A from the Django community.
-
django project does not write to file and there is no error, the file does not appear
I'm trying to write to a file and django doesn't do it. There is no error of any kind but the file does not appear. Using the process monitor I don't see any attempt to write. In a python file the same code works fine. Test performed: @method_decorator(login_required, name='dispatch') class TestWrite(TemplateView): template_name = 'test.html' with open(r'd:\djangotest.txt', "w") as fo: fo.write('test') fo.close() I did the test with Popen and it doesn't work either. p = subprocess.Popen(cmd, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True) stdout, stderr = p.communicate() returncode = p.returncode In the case of Popen I used pg_dump.exe and in stderr I got the result of the program running correctly but no file anywhere. It doesn't matter which path you select to write, inside the project, outside of it, ect. the file does not appear. I don't know if it's important, but I did the tests in pycharm. -
Is there a switch to store the Wagtail RichTextBlock content to database in UTF-8?
I am new in Django and Wagtail. I developed a website app using Django 4.0 and Wagtail 2.16.1. I found Django models.CharField by default stores content to database in UTF-8, while Wagtail RichTextBlock by default stores content to database in Unicode, which cause a problem when searching the East-Asian characters. models.py class BlogDetailPage(Page): custom_title = models.CharField('Title', max_length=60, help_text='文章标题') author = models.ForeignKey(User, on_delete=models.PROTECT) create_date = models.DateField("Create date", auto_now_add= True) update_date = models.DateField("Update date", auto_now=True) intro = models.CharField('Introduction', max_length=500, help_text='文章简介') tags = ClusterTaggableManager(through=BlogPageTag, blank=True) content = StreamField( [ ('heading', blocks.CharBlock(form_classname="full title")), ('paragraph', blocks.RichTextBlock()), ('image', ImageChooserBlock()), ('blockquote', blocks.BlockQuoteBlock(label='Block Quote')), ('documentchooser', DocumentChooserBlock(label='Document Chooser')), ('url', blocks.URLBlock(label='URL')), ('embed', EmbedBlock(label='Embed')), #('snippetchooser', SnippetChooserBlock(label='Snippet Chooser')), ('rawhtml', blocks.RawHTMLBlock(label='Raw HTML')), ('table', TableBlock(label='Table')), ('markdown', MarkdownBlock(label='Markdown')), ('code', CodeBlock(label='Code')), ('imagedeck', CardBlock(label='Imagedeck')), ], null=True, blank=True, ) search.py def search(request): search_query = request.GET.get('query', None).strip() page_num = request.GET.get('page', 1) condition = None for word in search_query.split(' '): if condition is None: condition = Q(custom_title__icontains=word) | Q(intro__icontains=word) | Q(content__icontains=word.encode('utf-8')) else: condition = condition | Q(custom_title__icontains=word) | Q(intro__icontains=word) | Q(content__icontains=word.encode('utf-8')) search_results = [] if condition is not None: search_results = BlogDetailPage.objects.live().filter(condition) The problem is I can search English and Chinese in the intro field, but can only search English in content field. When checking the database (PostgreSQL UTF-8 by … -
How to solve the problem of installing django-simple-history?
In my project i need to use django-simple-history but when i run the command : pip install django-simple-history i got the ERREUR : Could not build wheels for django-simple-history, which is required to install pyproject.toml-based projectsenter image description here any solutions please, thank you in advance -
Problem upgrading django 2.2.27 to 2.2.28 on Mac
I have a Django application that I'm trying to upgrade the django module from 2.2.27 to 2.2.28 to close a SQL injection attack vector. I'm running this on a recent intel Mac with a current OS, Python 3.7.7, and the installation and package management are handled by pipenv. If I clone the repository for the project and run pipenv install things work fine and I can run the application. If I edit the Pipfile and change django line to this: django = "==2.2.28" and run pipenv update I get a long error display: Running $ pipenv lock then $ pipenv sync. Locking [dev-packages] dependencies... Building requirements... Resolving dependencies... ✔ Success! Locking [packages] dependencies... Building requirements... Resolving dependencies... ✘ Locking Failed! INFO:pep517.envbuild:Temporary build environment: /var/folders/fh/jwrr3ps55v97vr65pvvc25ch0000gp/T/pep517-build-env-b7oz222d INFO:pep517.envbuild:Temporary build environment: /var/folders/fh/jwrr3ps55v97vr65pvvc25ch0000gp/T/pep517-build-env-a2zlgyg9 INFO:pep517.envbuild:Temporary build environment: /var/folders/fh/jwrr3ps55v97vr65pvvc25ch0000gp/T/pep517-build-env-wnccio_d INFO:pep517.envbuild:Temporary build environment: /var/folders/fh/jwrr3ps55v97vr65pvvc25ch0000gp/T/pep517-build-env-qdyz7et_ INFO:pep517.envbuild:Temporary build environment: /var/folders/fh/jwrr3ps55v97vr65pvvc25ch0000gp/T/pep517-build-env-f_ntiq_4 INFO:pep517.envbuild:Temporary build environment: /var/folders/fh/jwrr3ps55v97vr65pvvc25ch0000gp/T/pep517-build-env-njy4pcni INFO:pep517.envbuild:Temporary build environment: /var/folders/fh/jwrr3ps55v97vr65pvvc25ch0000gp/T/pep517-build-env-9hanls1n INFO:pep517.envbuild:Temporary build environment: /var/folders/fh/jwrr3ps55v97vr65pvvc25ch0000gp/T/pep517-build-env-nh2nhv5s INFO:pipenv.patched.notpip._internal.vcs.git:Cloning https://github.com/startwithlucy/zoomus.git (to revision v0.2.7) to /var/folders/fh/jwrr3ps55v97vr65pvvc25ch0000gp/T/pipenv-lodkowat-src/zoomus2 INFO:pep517.envbuild:Temporary build environment: /var/folders/fh/jwrr3ps55v97vr65pvvc25ch0000gp/T/pep517-build-env-3tdmn4n6 INFO:pep517.envbuild:Temporary build environment: /var/folders/fh/jwrr3ps55v97vr65pvvc25ch0000gp/T/pep517-build-env-or92fdaw INFO:pep517.envbuild:Temporary build environment: /var/folders/fh/jwrr3ps55v97vr65pvvc25ch0000gp/T/pep517-build-env-4afu8z2s INFO:pep517.envbuild:Temporary build environment: /var/folders/fh/jwrr3ps55v97vr65pvvc25ch0000gp/T/pep517-build-env-1gzv7c4l INFO:pep517.envbuild:Temporary build environment: /var/folders/fh/jwrr3ps55v97vr65pvvc25ch0000gp/T/pep517-build-env-_nb_ij8m INFO:pep517.envbuild:Temporary build environment: /var/folders/fh/jwrr3ps55v97vr65pvvc25ch0000gp/T/pep517-build-env-3mnuqo1i INFO:pep517.envbuild:Temporary build environment: /var/folders/fh/jwrr3ps55v97vr65pvvc25ch0000gp/T/pep517-build-env-8j29fail INFO:pep517.envbuild:Temporary build environment: /var/folders/fh/jwrr3ps55v97vr65pvvc25ch0000gp/T/pep517-build-env-equgr8uv INFO:pep517.envbuild:Temporary build environment: /var/folders/fh/jwrr3ps55v97vr65pvvc25ch0000gp/T/pep517-build-env-pyqzy2cq INFO:pep517.envbuild:Temporary build environment: /var/folders/fh/jwrr3ps55v97vr65pvvc25ch0000gp/T/pep517-build-env-lw3xry9m INFO:pipenv.patched.notpip._internal.operations.prepare:Obtaining … -
Django models: is it possible to force icontains on filter/get for specific field using a manager?
Let's say I have a model with a string field similar to this class Product(models.Model): upc = models.CharField(max_length=12, blank=False, null=False) Is it possible to build a model manager or something similar where every time I use Product.objects.get/Product.objects.filter it overrides the default lookup to force the search/filter to behave like I had used icontains? As in: Product.objects.get(upc="012345678902") Product.objects.filter(upc="012345678902") By default would behave like: Product.objects.get(upc__icontains="012345678902") Product.objects.filter(upc__icontains="012345678902") -
How to show on template just a Model with Foreign Key Django
I have this model: class CustomUser(AbstractUser): phone = models.IntegerField(null=True, blank=True) class RouterModel(models.Model): ip = models.CharField(max_length=15) username = models.CharField(max_length=50) password = models.CharField(max_length=50) port = models.IntegerField() owner = models.ForeignKey('CustomUser', on_delete=models.CASCADE, ) name = models.CharField(max_length=50) def __str__(self): return self.name class Clients(models.Model): name = models.CharField(max_length=50) tcpIP = models.IntegerField() email = models.EmailField() phone = models.IntegerField() zone = models.CharField(max_length=50) owner = models.ForeignKey('RouterModel', on_delete=models.CASCADE, ) def __str__(self): return self.name class Tickets(models.Model): title = models.CharField(max_length=200) comment = models.TextField(max_length=500) owner = models.ForeignKey('Clients', on_delete=models.CASCADE) def __str__(self): return self.title and this view class DashBoard(ListView): model = RouterModel template_name = 'templates/dashboard/dashboard.html' context_object_name = 'router_model' template: {% block content %} {% if user.is_authenticated %} <h3>Hello {{ user.username }}</h3> {% for router in object_list %} <h3>{{ router }}</h3> <h2>{{ router.ip }}</h2> <br> {% endfor %} {% endif %} {% endblock content%} Im getting on the template all the RouterModel created. I mean if user A create a RouterModel when I log in with user B i can see what user A create. how can i display only the user models created by user B? not the A or C. Just B. -
Images are not showing in a Django web app deployed on Heroku
I have a Django app deployed on Heroku the problem is that when I upload an image to the app, it's uploaded fine and it keeps being shown for sometime, when I close the app for a long time and come back the images become corrupted and not shown. I use postgres database. I use django-imagekit package to upload images into the models, I even installed the whitenoise package after I have seen a similar problem with this package as a solution and the problem is still persistent. and I don't know what the problem is. anybody has an idea ? settings.py MIDDLEWARE = [ 'django.middleware.security.SecurityMiddleware', "whitenoise.middleware.WhiteNoiseMiddleware", .... ] DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql', 'NAME': 'helper', 'USER': '', 'PASSWORD': '', 'HOST': 'localhost', # Empty for localhost through domain sockets or '127.0.0.1' for localhost through TCP. 'PORT': '', # Set to empty string for default. } } STATIC_URL = '/static/' MEDIA_ROOT = os.path.join(BASE_DIR, 'media') MEDIA_URL = '/media/' STATICFILES_STORAGE = "whitenoise.storage.CompressedManifestStaticFilesStorage" -
Error when creating a django superuser with Heroku - FileNotFoundError
I'm trying to deploy a django application on Heroku, but when it comes to the part where I need to create a superuser, I get an error: Traceback (most recent call last): File "/app/django_project/manage.py", line 22, in <module> main() File "/app/django_project/manage.py", line 18, in main execute_from_command_line(sys.argv) File "/app/.heroku/python/lib/python3.9/site-packages/django/core/management/__init__.py", line 446, in execute_from_command_line utility.execute() File "/app/.heroku/python/lib/python3.9/site-packages/django/core/management/__init__.py", line 440, in execute self.fetch_command(subcommand).run_from_argv(self.argv) File "/app/.heroku/python/lib/python3.9/site-packages/django/core/management/base.py", line 414, in run_from_argv self.execute(*args, **cmd_options) File "/app/.heroku/python/lib/python3.9/site-packages/django/contrib/auth/management/commands/createsuperuser.py", line 87, in execute return super().execute(*args, **options) File "/app/.heroku/python/lib/python3.9/site-packages/django/core/management/base.py", line 460, in execute output = self.handle(*args, **options) File "/app/.heroku/python/lib/python3.9/site-packages/django/contrib/auth/management/commands/createsuperuser.py", line 232, in handle self.UserModel._default_manager.db_manager(database).create_superuser( File "/app/.heroku/python/lib/python3.9/site-packages/django/contrib/auth/models.py", line 171, in create_superuser return self._create_user(username, email, password, **extra_fields) File "/app/.heroku/python/lib/python3.9/site-packages/django/contrib/auth/models.py", line 154, in _create_user user.save(using=self._db) File "/app/.heroku/python/lib/python3.9/site-packages/django/contrib/auth/base_user.py", line 68, in save super().save(*args, **kwargs) File "/app/.heroku/python/lib/python3.9/site-packages/django/db/models/base.py", line 806, in save self.save_base( File "/app/.heroku/python/lib/python3.9/site-packages/django/db/models/base.py", line 872, in save_base post_save.send( File "/app/.heroku/python/lib/python3.9/site-packages/django/dispatch/dispatcher.py", line 176, in send return [ File "/app/.heroku/python/lib/python3.9/site-packages/django/dispatch/dispatcher.py", line 177, in <listcomp> (receiver, receiver(signal=self, sender=sender, **named)) File "/app/django_project/users/signals.py", line 18, in create_profile Profile.objects.create(user=instance) File "/app/.heroku/python/lib/python3.9/site-packages/django/db/models/manager.py", line 85, in manager_method return getattr(self.get_queryset(), name)(*args, **kwargs) File "/app/.heroku/python/lib/python3.9/site-packages/django/db/models/query.py", line 514, in create obj.save(force_insert=True, using=self.db) File "/app/django_project/users/models.py", line 20, in save img = Image.open(self.image.path) File "/app/.heroku/python/lib/python3.9/site-packages/PIL/Image.py", line 3068, in open fp = builtins.open(filename, "rb") FileNotFoundError: [Errno 2] No … -
Getting objects before validating data Django REST
I have to create a new Chat object using this view: class ChatListCreateView(ListCreateAPIView): permission_classes = [IsAuthenticated] serializer_class = ChatSerializer def get_queryset(self): data = Chat.objects.filter( Q(employees=self.request.user) | Q(created_by=self.request.user)).distinct() return data The serializer it uses is: class ChatSerializer(serializers.ModelSerializer): created_by = SimpleEmployeeSerializer(read_only=True) employees = SimpleEmployeeSerializer(many=True, read_only=True) title = serializers.CharField(max_length=255) def create(self, validated_data): """ Creates a new Chat and adds the m2m employees to it """ # Create and save the chat chat = Chat.objects.create( created_by=self.context['request'].user, title=validated_data['title'], ) # Add the employees to the chat validated_employees = validated_data.pop('employees') for user_id in validated_employees: employee = Employee.objects.get(id=user_id) chat.employees.add(employee) return chat My issue is that the SimpleEmployeeSerializer expects a user object but I am submitting an array of employees as such: { "title": "fwef", "employees": [ { "id": "8" }, { "id": "30" } ] } What method can I implement to get the objects from these IDs before validation? -
collectstatic throws AttributeError: 'NoneType' object has no attribute 'startswith
I am following this guide to serve static files for my site using Digital Ocean's spaces. Here are my settings: ... MEDIA_URL = '/media/' MEDIA_ROOT = os.path.join(BASE_DIR, 'media/') AWS_ACCESS_KEY_ID = os.environ.get("DIGITALOCEAN_STATIC_ACCESS_KEY") AWS_SECRET_ACCESS_KEY = os.environ.get("DIGITALOCEAN_STATIC_SECRET_KEY") AWS_STORAGE_BUCKET_NAME = os.environ.get("AWS_STORAGE_BUCKET_NAME") AWS_LOCATION = os.environ.get("AWS_LOCATION") AWS_S3_ENDPOINT_URL = 'https://nyc3.digitaloceanspaces.com' AWS_S3_OBJECT_PARAMETERS = { 'CacheControl': 'max-age=86400', } STATICFILES_DIRS = [ os.path.join(BASE_DIR, 'static'), ] STATIC_URL = 'https://%s/%s/' % (AWS_S3_ENDPOINT_URL, AWS_LOCATION) STATICFILES_STORAGE = 'storages.backends.s3boto3.S3Boto3Storage' STATIC_ROOT ='/home/myname/example/assets' DEFAULT_FILE_STORAGE = 'storages.backends.s3boto3.S3Boto3Storage' When I run python manage.py collectstatic I get this: location as specified in your settings. This will overwrite existing files! Are you sure you want to do this? Type 'yes' to continue, or 'no' to cancel: yes 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 "/home/user/example/env/lib/python3.8/site-packages/django/core/management/__init__.py", line 419, in execute_from_command_line utility.execute() File "/home/user/example/env/lib/python3.8/site-packages/django/core/management/__init__.py", line 413, in execute self.fetch_command(subcommand).run_from_argv(self.argv) File "/home/user/example/env/lib/python3.8/site-packages/django/core/management/base.py", line 354, in run_from_argv self.execute(*args, **cmd_options) File "/home/user/example/env/lib/python3.8/site-packages/django/core/management/base.py", line 398, in execute output = self.handle(*args, **options) File "/home/user/example/env/lib/python3.8/site-packages/django/contrib/staticfiles/management/commands/collectstatic.py", line 187, in handle collected = self.collect() File "/home/user/example/env/lib/python3.8/site-packages/django/contrib/staticfiles/management/commands/collectstatic.py", line 114, in collect handler(path, prefixed_path, storage) File "/home/user/example/env/lib/python3.8/site-packages/django/contrib/staticfiles/management/commands/collectstatic.py", line 338, in copy_file if not self.delete_file(path, prefixed_path, source_storage): File "/home/user/example/env/lib/python3.8/site-packages/django/contrib/staticfiles/management/commands/collectstatic.py", line 248, in delete_file if self.storage.exists(prefixed_path): File "/home/user/example/env/lib/python3.8/site-packages/django/utils/functional.py", line 246, in inner … -
ReactJS / Axios / Django: Update form with the current image from API
I'm trying to create an update form in React, the update works fine as I have set the default values that coming from (get method) using axios and set them as the default if none changed. I get the existing image from API and set it as default value in React update form, if image updated get the new one(this one is working fine) if image was not updated, put the existing image that was received from the API which is not working, I get this message: {image: ["The submitted data was not a file. Check the encoding type on the form."]} my code: React: export function ProductUpdate() { const [p, setProduct] = useState("") const {slug} = useParams() useEffect(() => { function featchProduct() { axios.get(API.products.retrive(slug)) .then(res => { setProduct(res.data) }) } featchProduct() } ,[]) const [loading, setLoading] = useState(false) const [title, setTitle] = useState("") const [image, setImage] = useState(null) const [description, setDescription] = useState("") const [price, setPrice] = useState("") const [active, setActive] = useState("") const [soldout, setSoldout] = useState("") const handleSubmit = (event) => { event.preventDefault(); let formField = new FormData() formField.append('title', title || p.title) formField.append('slug', slug) formField.append('description', description || p.description) formField.append('price', price) formField.append('active', active) formField.append('soldout', soldout) formField.append('image', image || … -
How to do two separate Stripe payments with one click
I'm looking for a way to split a Stripe payment into two with one click, but one of the installments should be automatic while the other is based on a condition. I'm new to the Stripe API and relatively new to Django as well. It looks like Stripe Connect would solve the issue of splitting the payment in two, but both installments would be triggered at the same time which I'm trying to avoid. I know this is a pretty vague question so I apologize in advance. But if anyone has an idea how I could implement this please let me know! Thanks -
how can i add two related nested instance in one request using DRF?
Hi I'm new to Django rest framework I have class Location(models.Model): name = models.CharField(("name"), max_length=50) long = models.CharField(("longitude"), max_length=50) lat = models.CharField(("latitude"), max_length=50) def __str__(self): return self.name class Farm (models.Model): name = models.CharField(("Name"), max_length=50) size = models.FloatField('Size') size_unit = models.CharField(("Size Uint"), max_length=50) owner = models.ForeignKey(Account, on_delete=models.SET('Deleted user')) location = models.ForeignKey(Location, on_delete=models.SET('Deleted Location')) def __str__(self): return self.name those are my model and here are my serializers class FarmSerializer(serializers.ModelSerializer): class Meta: model = Farm fields = '__all__' class LocationSerializer(serializers.ModelSerializer): class Meta: model = Location fields = '__all__' how can I create both Farm and location in one request like { "name": "new farm", "size": 400, "size_unit": "meter", "owner": 1, "location":[{ "name":"new location", "long":2132.123212, "lat":2213231.1234}] } I tried to add create at serializer like def create(self,validated_date): location_data = validated_date.pop('location') location = Location.objects.get_or_create(**location_data) farm = Farm.objects.create(**validated_date,location=location) return farm but it does not work and it gives me this message { "location": [ "Incorrect type. Expected pk value, received list." ] } thanks for help -
Unable to serve static file in Django deployed to production in Digital ocean
currently I deployed my django app in Digital ocean droplet.In localhost it works well but it cant serve js/css files in static folder when deployed to prod, after some googling possible solutions, nothing works for me. server { server_name keywordprocessor.prodsite.com www.keywordprocessor.prodsite.com> location = /favicon.ico { access_log off; log_not_found off; } location /static/ { root /root/projects/backend/crawler; } location / { include proxy_params; proxy_pass http://unix:/run/gunicorn.sock; } ..... BY digital oceans default, the project resides inside root directory `cd projects` `pwd` returns /root/projects/ Settings # Static files (CSS, JavaScript, Images) # https://docs.djangoproject.com/en/4.0/howto/static-files/ STATIC_URL = "/static/" STATICFILES_DIRS = [os.path.join(BASE_DIR, "static")] STATIC_ROOT = os.path.join(BASE_DIR, "/") THis is how the project folder looks like backend/ crawler/ static/ templates .gitignore requirements.txt /etc/systemd/service/gunicorn.service [Unit] Description=gunicorn daemon Requires=gunicorn.socket After=network.target [Service] User=root Group=root WorkingDirectory=/root/projects/backend/crawler ExecStart=/usr/local/bin/gunicorn \ --access-logfile - \ --workers 3 \ --bind unix:/run/gunicorn.sock \ crawler.wsgi:application [Install] WantedBy=multi-user.target All js and css files cant be served `Failed to load resource: the server responded with a status of 404 (Not Found)` It does load the page but css messed up Regards -
How can I add ordering for ManyToMany field?
I have two models: CustomUser and AgreementReglament At this moment relation between the models looks like this: class AgreementReglament(models.Model): name = models.CharField(max_length=32) # just name of the reglament approvers = models.ManyToManyField( # set of users to approve 'CustomUser', related_name='agreement_reglaments' ) How can I set order of approvers (e.g. CustomUser1 should be the first in particular AgreementReglament1, CustomUser2 should be second and so on, but in AgreementReglament2 CustomUser2 can be the first) I think that json data should be like this: { "name": "Reglament1", "approvers": [ { "approver_name": "Alex", "approver_order": 1, }, { "approver_name": "Bob", "approver_order": 2, } ] } -
Adding markdown highlighted fenced block to django app with markdonx
I have been looking through the documentation but I can’t seem to get this to work. I wish to publish posts from a “creation page”. I want to use the editor markdownx. I got it to work, however there is no “fenced code support”. I tried to add the following line of code to my settings.py MARKDOWNX_MARKDOWN_EXTENSIONS = ['fenced_code'] but it breaks the code, in fact I get the following error (when I try to create a post): SyntaxError at /markdownx/markdownify/ if I erase the extensions list, it works fine. I would like also to use the codehilite extension by adding it to the list like this MARKDOWNX_MARKDOWN_EXTENSIONS = ['fenced_code' ,'codehilite'] but it does not work. I have installed pigments but the documentation does not seem to help. Could someone help me add this extensions correctly, getting highlighted code blocks to work. Thank you very much. -
Django Rest-Framework search-fields wont work inside @action
I'm trying to use the search field offered by DRF inside of an action, but it seems to not work. I had a similar problem paginating inside of the action but found a solution. My guess is that it's overriding the ModelViewSet so I have to manually add the filtering, but is there a way to use the same search_fields offered by DRF. Here's my code: class XViewSet(ModelViewSet): queryset = X.objects.all() serializer_class = XSerializer permission_classes = [IsAdminUser] filter_backends = (SearchFilter,OrderingFilter) search_fields = ['a','b','c','d'] @action(detail=False, methods=['GET'], permission_classes=[IsAuthenticated]) def me(self, request): query = X.objects.filter(ex_id=request.user.id) if request.method == 'GET': serializer = XSerializer(query, many=True) return Response(serializer.data) Any help is appreciated, Thank you :) -
Problem to install django proyect in IIS server windows 2016
I need help with the following problem: raise RuntimeError('No Apache installation can be found. Set the ' RuntimeError: No Apache installation can be found. Set the MOD_WSGI_APACHE_ROOTDIR environment to its location. This appears the moment I try to run the server the file. This is the content of the web.config file: <?xml version="1.0" encoding="utf-8"?> <configuration> <system.webServer> <handlers> <add name="Proyectoqr" path="*" verb="*" modules="FastCgiModule" scriptProcessor="C:\Python35\python.exe|C:\Python35\Lib\site-packages\wfastcgi.py" resourceType="Unspecified" requireAccess="Script"/> </handlers> </system.webServer> <appSettings> <add key="PYTHONPATH" value="C:\inetpub\wwwroot\proyectoqr"/> <add key="WSGI_HANDLER" value="proyectoqr.wsgi.application"/> <add key="DJANGO_SETTINGS_MODULE" value="proyectoqr.settings"/> <add key="APPLICATION" value="get_wsgi_application()"/> </appSettings> </configuration> This is the settings file of the project import os from pathlib import Path from telnetlib import LOGOUT from django.urls import reverse_lazy BASE_DIR = Path(__file__).resolve().parent.parent DEBUG = False ALLOWED_HOSTS = ['10.100.10.133', 'localhost', "127.0.0.1:8000", '127.0.0.1' ] INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'import_export', "apps.equipo", "apps.usuariof", ] MIDDLEWARE = [ 'django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.auth.middleware.RemoteUserMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', ] ROOT_URLCONF = 'proyectoqr.urls' TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': ["templates"], 'APP_DIRS': True, 'OPTIONS': { 'context_processors': [ 'django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages', ], }, }, ] AUTHENTICATION_BACKENDS = [ 'django.contrib.auth.backends.RemoteUserBackend', ] WSGI_APPLICATION = 'proyectoqr.wsgi.application' DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': BASE_DIR / 'db.sqlite3', } } AUTH_PASSWORD_VALIDATORS = [ { 'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator', }, { 'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator', }, { … -
error in migration with legacy database in Django
I'm working on creating a filter in django where the options displayed are coming from a new column in the database. It turns out that this column was created directly in the database and so that it could be displayed in my template, I need to capture this field in the models. After some research, I found in django's own documentation a function called "inspectdb" that is called by manage.py. So far so good, after executing the function, the database fields are added to my project so that they can be directed to their corresponding app.models. The documentation indicates that I must perform a python manage.py migrate for the sync to complete, this snippet of code is where the problem happens. When performing the migrate, I get the following error: "django.db.utils.ProgrammingError: relation "crontabmanager" already exists" The "crontabmanager" table actually exists in my database, but it is not changing at this time. Some actions were taken to try to get around this problem, for example: I tried to ignore the migration and use the new field directly in the system, but it returns stating that the new column does not exist Delete the migration file and create a new "makemigration" Delete … -
Use Facebook and Google social login urls only in django all auth
For normal signin/signup i'm using django's default singin/signup, but in facebook and google login i'm using django allauth, and to implement django allauth i have to add all its urls by adding: path('accounts/', include('allauth.urls')), But i don't need all the allauth urls, i only need the ones that are related to facebook and google social login. So how do i add only the ones that are needed for facebook and google login to run i tried this: path("accounts/", include("allauth.socialaccount.providers.google.urls")), path("accounts/", include("allauth.socialaccount.providers.facebook.urls")), With these two lines Google login worked normally but facebook login worked at first steps but the last step where i'm redirected to /accounts/facebook/login/callback/?code=xxxxx... it returns error 500 I'm pretty sure the login was implemented correctly and the problem is in adding the needed urls because everything works normally when using include('allauth.urls') -
How to separate tables based on the model using FSM and FSM-Log?
I'm currently logging status changes to several models in my Django REST API using the django-fsm and django-fsm-log packages. However, all of the logs are stored in a single table. This is gonna end up being a massive table that will take time to run through to do analysis and reporting. To make it easier I'd like to either break out the logging table by each individual model or sort them by the highest level model that's associated. I'll explain what I mean. I have 3 models: class Status: CREATED = 'created' ACTIVE = 'active' CANCELLED = 'cancelled' COMPLETED = 'completed' STATUS_CHOICES = ( (Status.CREATED, 'Created'), (Status.ACTIVE, 'Active'), (Status.CANCELLED, 'Cancelled'), (Status.COMPLETED, 'Completed'), ) # model 1 #========= class Company(models.Model): name = models.CharField(max_length=255) # model 2 #========= class Order(models.Model): name = models.CharField(max_length=255) company = models.ForeignKey(Company, related_name='company_order', on_delete=models.CASCADE) current_status = FSMField(choices=STATUS_CHOICES, default=Status.CREATED) @fsm_log_by @fsm_log_description @transition(field=current_status, source=Status.CREATED, target=Status.ACTIVE) def order_created_to_active(self, by=None, description=None): return "order is now active" @fsm_log_by @fsm_log_description @transition(field=current_status, source=Status.ACTIVE, target=Status.COMPLETED) def order_active_to_completed(self, by=None, description=None): return "order has been completed" @fsm_log_by @fsm_log_description @transition(field=current_status, source=Status.ACTIVE, target=Status.CANCELLED) def order_active_to_cancelled(self, by=None, description=None): return "order has been cancelled" # model 3 #========= class Sale(models.Model): sale_amount = models.DecimalField(max_digits=19, decimal_places=4) description = models.CharField(max_length=1000) company = models.ForeignKey(Company, related_name='company_sale', on_delete=models.CASCADE) … -
how to add data to database in django
I send the data I get from websocket with javascript to the view.py section of python-django with var xhr = new XMLHttpRequest() ///. my question is; The data comes to view.py. How can I save this incoming data to the database from now on? views.py; def gelismis_alim(request): data = json.loads(request.body) front_end_adet = data.get('adet') //I know probably,I should write here something to add it to database but I don't know what it is. print(data) return HttpResponse('/')enter code here the data which sended with js to django, stored in front_end_adet variable.this data is static, not change everytime. When I take a data from websocket I store it in a variable then I send it django view for once. my model.py; class AL(models.Model): quant = models.CharField(null=False) price = models.CharField(null=False) class SAT(models.Model): quant = models.CharField(null=False) price = models.CharField(null=False)enter code here What I want is to add the data in the front_end_piece variable to the quant part of the AL table.I would be glad if you help thank you. -
I'm trying to return mutliply queryset
I have endpoin called groups I want to return to each user groups that he created and the groups that he member in it my model class Group(models.Model): title = models.CharField(max_length=100,blank=False,default='') project = models.ForeignKey('Project',related_name='groups',on_delete=models.CASCADE) owner = models.ForeignKey('auth.User',related_name='group',on_delete=models.CASCADE) member = models.ManyToManyField('auth.User',related_name='group_members') created = models.DateTimeField(auto_now_add=True) active = models.BooleanField(default=False) def __str__(self): return self.title here is my serializer class GroupSerializer(serializers.HyperlinkedModelSerializer): owner = serializers.ReadOnlyField(source='owner.username') class Meta: model = Group fields = ('url','title','owner','member','created','active','project',) here is my view class GroupViewSet(viewsets.ModelViewSet): """ This viewset automatically provides `list` and `detail` actions. """ queryset = Group.objects.all() serializer_class = GroupSerializer permission_classes = ( permissions.IsAuthenticated,) def get_queryset(self): queryset = self.queryset query_set = queryset.filter(owner=self.request.user) query_set1 = queryset.filter(member=self.request.user) return list(chain(query_set)) + list(chain(query_set1)) def perform_create(self, serializer): serializer.save(owner=self.request.user) this view work with me but in the Group Instance return "detail": "Not found." here is my urls router = DefaultRouter() router.register(r'users', views.UserViewSet) router.register(r'projects', views.ProjectViewSet) router.register(r'tasks', views.TaskViewSet) router.register(r'groups', views.GroupViewSet) # The API URLs are now determined automatically by the router. # Additionally, we include the login URLs for the browsable API. urlpatterns = [ re_path(r'^', include(router.urls)) ] sorry my english is not good at all hope you understand me and hope you to help me thanks -
How to convert a view to a pdf in Django?
I need to render PDF files dynamically in a Django web app. I understand there are 2 options : Render an html template file then convert it to a PDF file. Convert a webpage into a PDF file directly How to do this? Any solution specifically made for Django? -
Is there any solution to fix this Cors error?
I have made an api from django but when I call from my react app It gives CORS error my settings.py INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'api.apps.ApiConfig', 'rest_framework', 'corsheaders', ] MIDDLEWARE = [ 'django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'corsheaders.middleware.CorsMiddleware', ] CORS_ALLOWED_ORIGINS = [ "http://localhost:3000", "http://127.0.0.1:3000", ] enter image description here