Django community: RSS
This page, updated regularly, aggregates Django Q&A from the Django community.
-
"No display of image in django when got access to aws s3 bucket"
"I tried to display images in django from aws s3 bucket the image is not displaying no error is shown" "This is a django server and images are from aws s3 bucket AWS_ACCESS_KEY_ID = os.environ.get('AWS_ACCESS_KEY_ID') AWS_SECRET_ACCESS_KEY = os.environ.get('AWS_SECRET_ACCESS_KEY')enter code here AWS_STORAGE_BUCKET_NAME = os.environ.get('AWS_STORAGE_BUCKET_NAME') AWS_S3_FILE_OVERWRITE = False AWS_DEFAULT_ACL = None DEFAULT_FILE_STORAGE = 'storages.backends.s3boto3.S3Boto3Storage' "The display of image is expected in django profile" error: no display of any image and no error is shown -
How to get cors to work properly with angular (apollo client ) and django/graphene
I am trying to build an application with python-graphene and django to persist data on the database side and using angular on the client side. I have developed both sides and they are working well independently, angular using the in-memory-web-api and graphene using insomnia (a postman style application for linux). To integrate them, I am trying to use apollo-angular. However, the request is returning a 404. I am fairly new to web development, so I might be missing something trivial. Searching online I found out that because the server is running on http://localhost:8000 and the application is running on http://localhost:4200, I needed to have CORS setup on the server side. I have followed the instructions on the manual: Install corsheaders via pip install django-cors-headers. Add corsheaders to INSTALLED_APPS. Add corsheaders.middleware.CorsMiddleware topmost at MIDDLEWARE. But still the error persisted. That is when I came across this thread and the answers seemed to be relevant. That is when I: Added CORS_ORIGIN_ALLOW_ALL = True and CORS_ALLOW_CREDENTIALS = True to settings.py at the server. Removed django.middleware.clickjacking.XFrameOptionsMiddleware from MIDDLEWERE. Added the withCredentials header to the request at the client side. Cleaned the browser cashed data and cookies. But still the error persisted. Here is my … -
How to display python variable values in Django template without using Models?
I'm new to Django and am facing this problem currently. I want to calculate the area and perimeter of a circle and post the result in the Django Template. I used a form to allow a user to input any number which will be considered as the radius. Using the POST method, it will process it and output me the area and perimeter (in views.py file). However, I'm not able to display the area and perimeter values in my Django template HTML page. The only values I store in my model is the radius value inputted by the user. Please do help. myapp/models.py: from django.db import models # Create your models here. class Circle(models.Model): radius = models.IntegerField(default = 0) def __str__(self): return str(self.radius) myapp/forms.py from django import forms from myapp.models import Circle class CircleForm(forms.ModelForm): class Meta: model = Circle fields = ["radius"] myapp/views.py import math from django.shortcuts import render from django.views.generic import TemplateView, CreateView, ListView from myapp.forms import CircleForm from django.urls import reverse_lazy from myapp.models import Circle from django.http import HttpResponseRedirect # Create your views here. class HomeView(TemplateView): template_name = 'home.html' class CircleView(CreateView): form_class = CircleForm template_name = 'insert_radius.html' def post(self, request, *args, **kwargs): form = self.form_class(request.POST) if form.is_valid(): radius … -
Django how to save to multiple sub-directories, without getting SuspiciousFileOperation
I'm still new to django, i got stuck in managing users' pictures' upload. here is what i'm doing: i have two apps in my project "travellers" and "drivers" both have a photo field, which have to be uploaded to its right directory. well here is the MEDIA_ROOT settings: MEDIA_ROOT = os.path.join(BASE_DIR, 'uploads/media/') here are the models: class Driver(Person): rating = models.DecimalField(default=0, decimal_places=1, max_digits=3) driving_license = models.CharField(max_length=50, null=True) insurance_number = models.CharField(max_length=50, null=True) company = models.ForeignKey(TransportCompany, on_delete=models.DO_NOTHING, null=True) photo = models.ImageField(null=True, upload_to='drivers/profile_pictures') class Traveller(Person): photo = models.ImageField(null=True, upload_to='travellers/profile_pictures') this is how my project is structured: backend- --bus --drivers --travellers --uploads- --media- --drivers- --profile_pictures --travellers- --profile_pictures well, when i try to add a traveller, or a driver, i get this error: SuspiciousFileOperation at /travellers/traveller/add/ The joined path (C:\mypath\web\backend\uploads\media\travellers\profile_pictures\cats.jpg) is located outside of the base path component (C:\mypath\web\backend\uploads\media\) -
is there a way to add new skin in django-ckeditor?
I'm trying to add new skin in django-ckeditor but its doesnt work and it shows a blank screen in django-admin I have installed the kama skin and extracted in static\ckeditor\ckeditor\skins\kama but doesnt seem to work. Below im showing my ckeditor config options: CKEDITOR_CONFIGS = { 'default': { 'toolbar': None, 'toolbarCanCollapse': True, 'skin': 'kama', 'uiColor': '#b7d6ec', }, } Can someone please resolve this issue?I m very new to django ckeditor and its config and building my first website. Thanks in advance ! -
Django unable to hide sensitive variables
I have hooked my app to Sentry, and I'm trying to check if I can prevent sensitive varaiables from being logged. Here's my code: @sensitive_variables('user', 'pw', 'cc') def get(self, request): user = "foobar" raise Exception(f"{user}") My expectation was the it would replace the value of user with stars (**********), according to the docs: https://docs.djangoproject.com/en/2.2/howto/error-reporting/#filtering-sensitive-information However, the exception printed out its actual value -- and the sentry logs reflected this. How do i get it to replace the value of sensitive information with stars? -
While connecting to amazon web services s3 storage its throwing an error 'type error expected string or byte like object'
I am new Django website development and now I am trying to connect my django website to amazon web services but the error which is I am facing is that I am not able to solve it. I thought anybody here could help . settings.py AWS_ACCESS_KEY_ID = os.environ.get('AWS_ACCESS_KEY_ID') #This key I have set in another file AWS_SECRET_ACCESS_KEY = os.environ.get('AWS_SECRET_ACCESS_KEY') #This is also the same stored in another file AWS_STORAGE_BUCKET_NAME = os.environ.get('AWS_STORAGE_BUCKET_NAME') AWS_S3_FILE_OVERWRITE = False AWS_DEFAULT_ACL = None DEFAULT_FILE_STORAGE = 'storages.backends.s3boto3.S3Boto3Storage' #It's backend And the profile is also not opening its showing an value error. Can please help me out? Here is the error: if VALID_BUCKET.search(bucket) is None: TypeError: expected string or bytes-like object [02/Aug/2019 15:19:06] "POST /adform/ HTTP/1.1" 500 199049 I expected the output that the photo I upload should link with s3 storage but while linking its throwing an error . -
MQTT-Django. How can I implement it?
I´m trying to implement a Django-Mqtt system, but I´m a bit lost. I would like to update my models constantly with the data I receive from the topics. I´ve managed to update the model data with this function in views.py: def dhtDetail(request): member = request.user.userprofile listDHT = member.dht.all() for sensor in listDHT: topic = sensor.topic #This topic (sensor.topic) has temperature and humidity data m = subscribe.simple(topic, hostname="Broker IP", retained=False) mes = str(m.payload) mes = men.replace("'", "") mes = men.replace("b", "") mes = men.replace("Hum", "") mes = men.replace("Temp", "") mes = men.split(" ") sensor.temp = float(mes[3]) sensor.hum = float(mes[1]) sensor.save() member.dht.add(sensor) listDHT = member.dht.all() return render(request, 'web/dhtDetail.html', {'listDHT':listDHT}) Clearly, this only connects to broker and updates the data when "dhtDetail.html" is reloaded. How can I implement MQTT with Django to constantly update the models? -
how to get COUNT from id field of database using abstract user
how to get a count of total users in the database using an abstract user model. I want to use the id field to get the count of total users -
Wagtail ModelAdmin: Does not hide widget label
I have written an own panel that utilizes the django modeladmin. The modeladmin is connected to another model via a foreign key, but I dont want the user to be able to change the foreign key relation, only the other data on the form. I have therefor tried to hide the widget via the panels argument on the model admin: panels = [ FieldPanel("event_detail", widget=HiddenInput), FieldPanel("title"), FieldPanel("content"), FieldPanel("send_time"), ] This handles the input field correctly in the modeladmin, but sadly I still see the label in the modeladmin, which will confuse my users. How can I make sure that not only the field is removed but also the label? -
AttributeError: module 'profile' has no attribute 'run'
So I have an extended User model (extended AbstractUser) called Profile. This was in a seperate app called "profiles". I was plugging in the standard login and realised it was looking for a "profile" app name as standard, so I renamed it (directories, code, DB schema) which I thought should work. app_name was actually already set to "profile" in apps.py, so didn't need to rename url references. No dice. I get the error in the title. So I removed all migrations (I'm at the stage where I can still do this OK :) ) and deleted the sqlite DB that I'm currently working with, thinking I'd just rerun the migrations and recreate everything. Same error. The stack trace is: λ python manage.py makemigrations Traceback (most recent call last): File "manage.py", line 21, in <module> main() File "manage.py", line 17, in main execute_from_command_line(sys.argv) File "C:\Users\mjnic\.virtualenvs\pyp-E_0Se9Bl\lib\site-packages\django\core\management\__init__.py", line 381, in execute_from_command_line utility.execute() File "C:\Users\mjnic\.virtualenvs\pyp-E_0Se9Bl\lib\site-packages\django\core\management\__init__.py", line 375, in execute self.fetch_command(subcommand).run_from_argv(self.argv) File "C:\Users\mjnic\.virtualenvs\pyp-E_0Se9Bl\lib\site-packages\django\core\management\base.py", line 323, in run_from_argv self.execute(*args, **cmd_options) File "C:\Users\mjnic\.virtualenvs\pyp-E_0Se9Bl\lib\site-packages\django\core\management\base.py", line 361, in execute self.check() File "C:\Users\mjnic\.virtualenvs\pyp-E_0Se9Bl\lib\site-packages\django\core\management\base.py", line 390, in check include_deployment_checks=include_deployment_checks, File "C:\Users\mjnic\.virtualenvs\pyp-E_0Se9Bl\lib\site-packages\django\core\management\base.py", line 377, in _run_checks return checks.run_checks(**kwargs) File "C:\Users\mjnic\.virtualenvs\pyp-E_0Se9Bl\lib\site-packages\django\core\checks\registry.py", line 72, in run_checks new_errors = check(app_configs=app_configs) File "C:\Users\mjnic\.virtualenvs\pyp-E_0Se9Bl\lib\site-packages\debug_toolbar\apps.py", line 18, in … -
Showing count of total objects in Django template
I have a Djanjo project where I add code snippets to a database, I would like to show display, in my template, a count of total snippets. Here is my model file: import datetime from django.utils import timezone from django.db import models from django.contrib.auth.models import User from django.db.models.signals import post_save from django.dispatch import receiver class Snippet(models.Model): snippet_name = models.CharField(max_length=200) description = models.TextField(max_length=600) code = models.TextField(default="null") approval_stage = models.CharField(max_length=200) updated = models.DateField('updated date') is_automated = models.BooleanField(default=False) def __str__(self): return self.snippet_name def total_snippets(self): return snippet_name.count() And here is the section of my template file where I want to display the number of snippets: <h5>{{ total_snippets }} total snippets</h5> This is rendering blank, with by value, on the final template. I've copied this code from another model, where I show a similar count of objects, and this works as expected, what am i missing here? -
Programing error: relation "api_role does not exist while makemigrations
Setting up a new brand new virtual environment and postgres db and can't even makemigrations. The system is running well on 2 other pc's python3.5 is installed virtual env created apps "requirements.txt" is sucessfully installed manage.py recognize the postgres server with the config created dev_henrique_desktop.py from .base import * DEBUG = True # Allow specific host headers only ALLOWED_HOSTS = ['localhost', '127.0.0.1', '.proregatta.com','10.0.2.2'] DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql', 'NAME': 'proregatta', 'USER': 'postgres', 'PASSWORD': '*****', 'HOST': 'localhost', 'PORT': '5432', } } both py and postgres are on PATH virtual env activated checked pgAdmin III for the super user created "postgres" when installing psql then beggins the problem already forced drop db searched for the "api_role" related problem in the migrations in every answer i get my eyes on. every one says makemigrations. what about when you can't make the inicial makemigrations delete all migrations and fresh "makemigrations" unnistall and install formatted the pc when problem persisted I expected to at the very least to make the inicial makemigrations noticed that the other machines probably have this missing relation in the db but not in migrations. Traceback (most recent call last): File "C:\Users\henri\Documents\Projects\backend-django\venv\lib\site-packages\django\db\backends\utils.py", line 85, in _execute return self.cursor.execute(sql, params) … -
All urls are not mapped by django rest framework swagger
I implement Django-rest-swagger for documentation my API but swagger UI not showing all URLs. When ı add permission_classes = [AllowAny] in my View than show the URL on swagger UI but this time all user will connect my DB ı don't want to do this. I want when the user login then gets the JWT token, after that click the Authorize button on swagger than will access my APIs. How can ı implement correctly JWT Bearer auth on my swagger UI? django-rest-swagger-2.1.1 djangorestframework Version: 3.9.0 Django Version: 2.2.3 Settings: SWAGGER_SETTINGS = { 'LOGIN_URL': 'rest_framework:login', 'LOGOUT_URL': 'rest_framework:logout', 'USE_SESSION_AUTH': False, 'DOC_EXPANSION': 'list', 'APIS_SORTER': 'alpha', 'JSON_EDITOR': False, 'api_version': '0.1', 'SUPPORTED_SUBMIT_METHODS': [ 'get', 'post', ], 'SECURITY_DEFINITIONS': { "api_key": { "type": "apiKey", "name": "Authorization", "in": "header", "description": "JWT authorization" }, },} Urls.py: schema_view = get_swagger_view(title='Unite.Ad Api') router = routers.SimpleRouter() router.register(r'company', CompanyViewSet, basename="company") router.register(r'brands', BrandsViewSet, basename="company_brands") router.register(r'brand-categories', BrandCategoriesViewSet, basename="company_brand_categories") router.register(r'customer-representative', CustomerRepresentativeViewSet, basename="customer_representative") router.register(r'sectors', SectorViewSet, basename="company_sectors") router.register(r'brief', BriefViewSet, basename="briefs") router.register(r'brief-categories', BriefCategoriesViewSet, basename="briefs-categories") router.register(r'country', CountryViewSet, basename="country") router.register(r'province', ProvinceViewSet, basename="province") urlpatterns = [ path('', schema_view), path('', include(router.urls)), path('admin/', admin.site.urls), path('user/register/', RegistrationView.as_view()), path('user/login/', AuthTokenViewSet.as_view()), path('api-auth/', include('rest_framework.urls', namespace='rest_framework')), path('api-token-auth/', obtain_jwt_token), path('api-token-verify/', verify_jwt_token), ] CompanyViewSet.py: class CompanyViewSet(ModelViewSet): """ retrieve: Return the given company. list: Return a list of logged user company and … -
How to hyperlink data from database on django
I am trying to build a simple search function on django that leads me to the link when I click on it. (I know api links are json links so clicking on them gives you no output of value but the point is to be able to click on them) i tried using but it doesnt work from my results.html: {% for dataset in datasets %} <br/> {{ dataset.datasets_available }} <br/> {{ dataset.data_source }} <br/> {{ dataset.brief_description_of_datasets }} <br/> {{ dataset.country }} <br/> <a href='https://www.google.com'>{{ dataset.api_documentation }}<a> <br/> #^ is the part i wanna fix <br/> {% endfor %} {% else %} <p style="font-family:Cambria">No search results for this query</p> {% endif %}` from views.py: def results(request): query = request.GET.get('q') if query: datasets = api_data.objects.filter(Q(datasets_available__icontains=query)) context = { 'datasets': datasets, } return render(request, 'Search/results.html', context) from models.py: class api_data(models.Model): data_source = models.TextField() brief_description_of_data = models.TextField() datasets_available = models.TextField() brief_description_of_datasets = models.TextField() country = models.TextField() api_documentation = models.TextField() class Meta: verbose_name_plural = "api_data" api_documentation is currently urls in strings. i want to be able to click on the output in html and view the actual website -
Send AJAX request to Django view with vanilla JS
I'm trying to send a GET AJAX request to a Django view using vanilla JS. is_ajax() passes but I could not retrieve the request object properly. Here is my JS code. With/out JSON.stringify(data) doesn't work. document.querySelector('#testForm').onsubmit = () => { let data = {category : 'music'}; const request = new XMLHttpRequest(); request.open('GET', 'test/', true); request.setRequestHeader('X-Requested-With', 'XMLHttpRequest'); request.onload = () => { const data = JSON.parse(request.responseText); console.log(data); } request.send(data); return false; }); And here is my Django view: def test(request): if request.is_ajax(): print('Yes!') data = {'category': request.GET.get('category', None)} return JsonResponse(data) else: raise Http404 It prints Yes! to the terminal but I get back a {category: null} in the console. This JQuery code works and I get the expected {category: "music"} response: $.ajax({ url: 'cart/', type: 'GET', data: data, dataType: 'json', success: function (data) { console.log(data); } }); I'm wondering what I'm missing in the vanilla JS code or in my Django view. -
Iterate through a string array in JSON
I'm looking to import data from a local JSON file into my DB Django. However, I have a problem because my JSON file contains a String array for each element and I can't iterate it. Example of the JSON file: [ { "key": "sword", "name": "Sword", "tier": 1, "tab": [ "damages", "cac" ] }, { "key": "bow", "name": "Bow", "tier": 1, "tab": [ "damages", "distance" ] }, ... ] I import this data using a script as follows: class Command(BaseCommand): def add_arguments(self, parser): parser.add_argument('json_file', type=str) def handle(self, *args, **options): with open(options['json_file']) as f: data_list = json.load(f) for data in data_list: Item.objects.get_or_create( key=data['key'], name=data['name'], tier=data['tier'], ) for build in data['tab']: Build.objects.get_or_create( key = build ) The above script does not work and I have the following error in the console: KeyError: 'tab' -
Django: reset password of user as the Django administration
I have a section for website's staff, where they can manage users (register, update users info, deactivate...) like in the Django administration. Is there a way to reset user's password like in /admin/auth/user/<int:id>/password/ ? Here what I have done so far: forms.py class UpdateForm(UserChangeForm): is_active = forms.BooleanField(required=False) Group = [('Viewers', 'Viewers'), ('Editors', 'Editors'), ('Creators', 'Creators'), ('Staff', 'Staff'), ] group_name = forms.ChoiceField(choices=Group) class Meta: model = User fields = ('username', 'first_name', 'last_name', 'email', 'group_name', 'is_active', 'password',) views.py # Update status of user @login_required @group_required('Staff') def updateUserView(request, id): if request.method == 'POST': form = UpdateForm(request.POST, instance=User.objects.get(id=id)) if form.is_valid(): user = form.save() group = Group.objects.get(name=request.POST.get('group_name')) user.groups.add(group) return redirect('accounts:users') else: form = UpdateForm(instance=User.objects.get(id=id)) return render(request, 'accounts/update_user.html', {'form': form}) -
can't connect to mongodb through url in ubuntu18.04
I'm trying to connect mongodb with my django application. Help me with this situation. This is for Ubuntu-18.04 users running mongodb. I tried to run mongodb through command mongo and it worked where i created a db and user but when i use command mongod, it seemed good but when i entered localhost:27017 in firefox i get the error "The connection was reset" and it showed this error in terminal. I don't know what to do. 2019-08-02T13:50:45.825+0530 I CONTROL [initandlisten] MongoDB starting : pid=2737 port=27017 dbpath=/data/db 64-bit host=django 2019-08-02T13:50:45.825+0530 I CONTROL [initandlisten] db version v3.6.3 2019-08-02T13:50:45.825+0530 I CONTROL [initandlisten] git version: 9586e557d54ef70f9ca4b43c26892cd55257e1a5 2019-08-02T13:50:45.825+0530 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.1.1 11 Sep 2018 2019-08-02T13:50:45.825+0530 I CONTROL [initandlisten] allocator: tcmalloc 2019-08-02T13:50:45.825+0530 I CONTROL [initandlisten] modules: none 2019-08-02T13:50:45.825+0530 I CONTROL [initandlisten] build environment: 2019-08-02T13:50:45.825+0530 I CONTROL [initandlisten] distarch: x86_64 2019-08-02T13:50:45.825+0530 I CONTROL [initandlisten] target_arch: x86_64 2019-08-02T13:50:45.825+0530 I CONTROL [initandlisten] options: {} 2019-08-02T13:50:45.825+0530 I - [initandlisten] Detected data files in /data/db created by the 'wiredTiger' storage engine, so setting the active storage engine to 'wiredTiger'. 2019-08-02T13:50:45.825+0530 I STORAGE [initandlisten] 2019-08-02T13:50:45.825+0530 I STORAGE [initandlisten] ** WARNING: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine 2019-08-02T13:50:45.825+0530 I STORAGE [initandlisten] ** See … -
Atom text editor terminal is not working properly
I am practicing Django in atom text editor and install Platformio-ide-terminal package but after installation when I click to the + sign on the bottom left it is showing me blank console my expected result is console with some directories but it is showing me blank space with a blinking cursor -
ImportError: cannot import name 'get_core_apps' in Django Oscar Module
I am getting error when I am installing Django Oscar Module in my Project, it's giving me this error from oscar import get_core_apps ImportError: cannot import name 'get_core_apps' Here are my settings.py file... from oscar import get_core_apps INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.sites', 'django.contrib.flatpages', 'compressor', 'widget_tweaks', 'south', ] + get_core_apps() -
Why doesn't CreateView pass the argument to the form?
Override form field queryset by passing additional argument (employee_pk) from get_form_kwargs method to __init__ form method. I try 2 ways, both do not work. First: class SkillTestCreateView(AuthorizedMixin, CreateView): model = Skill form_class = SkillGroupCreateForm template_name = 'skill_create.html' def get_form_kwargs(self): kwargs = super().get_form_kwargs() kwargs['employee_pk'] = self.kwargs['pk'] return kwargs def get_context_data(self, **kwargs): print(self.kwargs['pk']) ---> just for test print 4 context = super(SkillTestCreateView, self).get_context_data(**kwargs) forms.py class SkillGroupCreateForm(forms.ModelForm): def __init__(self, *args, **kwargs): self.employee_pk = kwargs.pop('employee_pk', None) # super(SkillGroupCreateForm, self).__init__(*args, **kwargs) self.fields['technology'].required = False if self.employee_pk: self.fields['technology'].queryset = Technology.objects.exclude(skill__employee_id=self.employee_pk) Second: class SkillCreateView(AuthorizedMixin, CreateView): model = Skill form_class = SkillCreateForm template_name = 'employee_info_create.html' def get_form_kwargs(self): kwargs = super().get_form_kwargs() kwargs.update(employee_pk=self.kwargs['pk']) return kwargs forms.py class SkillCreateForm(forms.ModelForm): def __init__(self, *args, employee_pk=None, **kwargs): super().__init__(*args, **kwargs) if employee_pk is not None: self.fields['technology'].queryset = Technology.objects.exclude( skill__employee_id=employee_pk ) Both return None -
Unable to receive push notification after web push
I am trying to implement push notification in react and django. Followed push notification documentation as per https://developers.google.com/web/fundamentals/push-notifications/. Able to generate subscription key and storing it into database. In backend, i am using django, so for that i have used pywebpush library. After creating subscription i am saving it into database. After storing the data successfully, i am same data with message and called function webpush. I am getting the response 201 OK but i am not receiving any notification. Note: For react, i have used creact-react-app and trying to implement push notification in development environment. I have created my separate sw.js file in public/sw.js. From dev tool, i can trigger push notification but from code i am not able to trigger it. Thanks in advance for any help. Django: class trigger_notification (generics.CreateAPIView): """ API Endpoint to trigger the notification """ serializer_class = UserSubscriptionSerializer def post(self, request): try: data = request.data print('Came to trigger push service') # Get the subscription and data to be send trigger_notification = webpush( subscription_info={ 'endpoint': data['endpoint'], 'keys': { 'p256dh': data['p256dh'], 'auth': data['auth'] } }, data=data['message'], vapid_private_key=config('PRIVATE_KEY'), vapid_claims={ "sub" : "mailto:admin@xyz.com" } ) print('Trigger Notification -------') print(trigger_notification) print('end---------------- ') return Response({'message' : 'trigger push notification'}, status=201) … -
Create Model for newly created Database durring runtime
To my current project: We create durring runtime new databases and fill them with table and informations. Now we need to create a model file that looks like that: class Attributes(models.Model): fk_pset = models.CharField(max_length=255, blank=True, null=True) attribute_name = models.CharField(max_length=255, blank=True, null=True) attribute_name_readable = models.CharField(max_length=255, blank=True, null=True) ifc_class = models.CharField(max_length=255, blank=True, null=True) data_type = models.CharField(max_length=255, blank=True, null=True) class Meta: managed = False db_table = 'attributes' class Ifcbeam(models.Model): globalid = models.CharField(max_length=255, blank=True, null=True) entitylabel = models.CharField(max_length=255, blank=True, null=True) name = models.CharField(max_length=255, blank=True, null=True) parent = models.CharField(max_length=255, blank=True, null=True) isexternal = models.CharField(max_length=255, blank=True, null=True) loadbearing = models.CharField(max_length=255, blank=True, null=True) class Meta: managed = False db_table = 'ifcbeam' This file we can create when the server isnt running with inspectdb but now we need to create them durring runtime. Is there a way to create such a file with python code? -
How to integrate Neo4J with GraphQL in Django?
Recently I wanted to try something else besides API and DB for backend. I'd say a graph stack for Django. I choose GraphQL because of its popularity and as database I wanted to try something else that is not working with tables, rows and columns. I choose Neo4j for this task and its Django OGM neomodel. I started reading documentation of both technologies. Struggling with them a little bit I wanted to integrate them and I found out that there is no such opportunity. Articles that I found were written about either Neo4j and DRF or GraphQL with ordinary RDB. I created some nodes, for now I've got one app that is a user profile (I'm doing a clone of social network) and mapped them to a GraphQL schema. Then I've got errors like Country doesn't have attribute _meta and etc. My nodes # Node is AbstractNode with __abstract_node__ attribute set to True class Country(Node): name = StringProperty() class City(Node): name = StringProperty() And schema class Query(graphene.ObjectType): countries = graphene.List(Country) cities = graphene.List(City) country = graphene.Field(Country) city = graphene.Field(City) def resolve_countries(self, info, **kwargs): return Country.nodes.all() def resolve_cities(self, info, **kwargs): return City.nodes.all() def resolve_country(self, info, **kwargs): pass def resolve_city(self, info, **kwargs): …