Django community: RSS
This page, updated regularly, aggregates Django Q&A from the Django community.
-
Python / Django - Upload Folder
I'm building a medical system that doctors will upload their patient data from a directory. Searching and searching I figured out that HTML5 has a tag named "directory", like this example: http://www.w3bees.com/2013/03/directory-upload-using-html-5-and-php.html So far, seems like I solved my front-end problem! And now? How to handle multiple files upload on my back-end using Python or Django? PS: The example above is only one input file, not multiple. I'm trying to achieve the same. -
NoReverseMatch error in Django Tutorial
I'm following the Django tutorial and have got half way through this page:Django tutorial I get the error 'NoReverseMatch' with the exception value being "Reverse for 'vote' with arguments '(None,)' and keyword arguments '{}' not found. 1 pattern(s) tried: ['polls/(?P[0-9]+)/vote/$']". I have gone through and tried to check for types as best as possible but any help in resolving this issue will be great. I'll put the relevant code down below but let me know if you need any other code. Thanks views.py from django.shortcuts import get_object_or_404,render from django.http import HttpResponse, HttpResponseRedirect from django.urls import reverse from .models import choice, question from django.template import loader ##def index(request): ## return HttpResponse("Hello World. You're at the polls index.") ##def detail(request, question_id): ## return HttpResponse("You're looking at question %s." % question_id) ## try: ## Question = question.objects.get(pk=question_id) ## except question.DoesNotExist: ## raise Http404("Question does not exist") ## return render(request, 'polls/detail.html',{'Question':Question}) def detail(request, question_id): Question = get_object_or_404(question, pk=question_id) return render(request, 'polls/detail.html',{'question': question}) def results(request, question_id): response = "You're looking at the results of question %s." return HttpResponse(response % question_id) def vote(request, question_id): return HttpResponse("You're voting on question %s." % question_id) def index(request): latestQuestionList = question.objects.order_by('-pubDate')[:5] template = loader.get_template('polls/index.html') contect = { 'latestQuestionList': latestQuestionList, } … -
Deleting comment should be implemented in ajax (Django)?
I made a board application using django framework, where I can post a post and post comments in each post. Usually, GET and POST comment requests are implemented in ajax. But wonder for DELETE and UPDATE. In case of UPDATE, it is much prefered to be implemented with ajax. But DELETE, it doesn't have to be implemented with ajax. I mean, I can make a sort of DeleteCommentView and dealing deleting comment process. Need your advices about my opinion. Thanks -
How to create dynamic form in django and implement add new record?
I want to make a page where user can input three form fields like 'car_name','bike_name','views'. I want to make a html which initially have these 3 form input space. and further i want to add a button "add new entry". when user click on it then on same page 3 new form inputs will appear. and so on. When user click submit button then all these fields have into database. How can i do it? I tried implementing https://docs.djangoproject.com/en/1.9/topics/forms/formsets/ but here we have to provide no of extra forms in views.py itself. but i want to set it from my html page. how can i do it? Thanks! -
Django : how to pass event.id/package.id in a template
I have three jobs to be done 1) Read Packages related to an event 2) Update Packages related to that event one by one. 3) Or delete the same package related to that event. I have my views.py like this : @login_required def update_package(request, pk ): package = Packages.objects.get(pk = pk) event = AddEvent.objects.get(EventId = package.PackageId) if request.method == 'POST': f1 = PackageForm(request.POST, instance = event) if f1.is_valid(): f1.save() return redirect('update_package' , package , event.id ) else: f1 = PackageForm(instance = event) return render(request,'addpackage.html', {'form':f1}) @login_required def delete_package(request, pk): PackageId = Packages.objects.get(pk=pk) if request.method == 'POST' : PackageId.delete() return redirect('read_package' , PackageId) return render(request, 'package_confirm_delete.html',{'object':PackageId}) And I have my urls.py as url(r'^update_package/(?P<id>.+)/(?P<pk>.+)$',update_package,name='update_package'), url(r'^delete_package/(?P<id>.+)/(?P<pk>.+)$', delete_package, name='delete_package'), but it gives me an error like this Reverse for 'update_package' with arguments '(34,)' and keyword arguments '{}' not found. 1 pattern(s) tried: ['organiser/update_package/(?P<id>.+)/(?P<pk>.+)$'] I am new to all this and I am also not sure if I am doing it right. To read the package I want the url to be like this localhost:8000/organiser/read_package/9 And to update the package 34 in event 9 localhost:8000/organiser/update_package/9/34 Please suggest some way out. Any help is really appreciable And thanks in advance. PS : Django version : 1.10 -
Django: Sometimes request.session.session_key is None
I hit a problem when get session_key from request.session. I am using Django1.8 and Python2.7.10 to set up a retful service. Here is snippet of my login view: user = authenticate(username=userName, password=passWord) if user is not None: # the password verified for the user if user.is_active: # app_logger.debug("User is valid, active and authenticated") if hasattr(user, 'parent') : login(request, user) request.session['ut'] = 4 # user type 1 means admin, 2 for teacher, 3 for student, 4 for parents request.session['uid'] = user.id description = request.POST.get('description','') request.session['realname'] = user.parent.realname request.session['pid'] = user.parent.id devicemanage.update_user_device(devicetoken, user.id, ostype, description) children = parentmanage.get_children_info(user.parent.id) session_id = request.session.session_key user.parent.login_status = True user.parent.save() return JsonResponse({'retcode': 0,'notify_setting':{'receive_notify':user.parent.receive_notify,'notify_with_sound':user.parent.notify_with_sound,'notify_sound':user.parent.notify_sound,'notify_shake':user.parent.notify_shake},'pid':user.parent.id,'children':children,'name':user.parent.realname,'sessionid':session_id,'avatar':user.parent.avatar,'coins':user.parent.coins}) Now when this guy get called, I see sometimes sessionid is None within the response. So, after debug(I set breakpoint at the return JsonResponse line), I see that, when the issue happened, code blocked at the breakpoint line, request.session._session_key is None, but request.session.session_key is u'j4lhxe8lvk7j4v5cmkfzytyn5235chf1'. And, session_id is also None. Anyone know how this happened? session_key is not set when set value to session_id? Thanks. Wesley -
Mezzanine: Allow users to publish their own blogs
I am using mezzanine for a blogging website and I want the users to be able to publish their own blogs. I don't want to give them restricted admin access, which is one of the way to achieve this. Is there a way to make it possible? I have already gone through a similar question : Customizing mezzanine to allow users to edit and publish their own blog, but could not resolve the issue. -
Angularjs ng-repeat "Cannot read proterty of parent" when using ng-init
I have a Django page and Angular app with the following code: <section id="categoryListServerspage" ng-controller="categoryListServerController"> <data ng-init="ServerList={{ ServerList }}"/> <div class="x_panel"> <div class="x_title"> <h2><a href="#/category/<% CategoryName %>" ng-click="clear()"><% CategoryName %></a> <small>category servers</small></h2> <div class="clearfix"></div> </div> <div class="x_content"> <% ServerList %> <table id="datatable-responsive" class="table table-striped table-bordered dt-responsive nowrap"> <thead> <tr> <th>ID</th> <th>Server Name</th> <th>Status</th> <th>Last hour data insertion</th> </tr> </thead> <tbody> <tr ng-repeat="servers in ServerList"> <td>test</td> </tr> </tbody> </table> </div> </div> </section> The <% ServerList %> is being rendered but am having undefined variable error in the ng-repeat. It seems as if the ServerList in the ng-repeat is not defined. angular1.5.7.min.js:117 TypeError: Cannot read property 'parent' of undefined at Object.enter (angular1.5.7.min.js:202) at angular1.5.7.min.js:301 at angular1.5.7.min.js:58 at angular1.5.7.min.js:62 at d (angular1.5.7.min.js:59) at n (angular1.5.7.min.js:64) at angular1.5.7.min.js:301 at angular1.5.7.min.js:141 at m.$digest (angular1.5.7.min.js:142) at m.$apply (angular1.5.7.min.js:145) In my controller I can access the scope variable ServerList however: $scope.$watch('ServerList', function () { console.log($scope.ServerList); }); How do I make my ng-repeat work with the ng-init i initialized with Django? Note: Angular is using tags <% BLABLA %> and Django templates is using {{ }} -
Django JSONField: Escape '/' in filter parameters
The data dictionary in my JSONField, which is a response from the Twitter API, has a resource URI as key, thus contains '/', i.e.: class Token(models.Model): status = JSONField() status = { '/help/tos': {'remaining': 10, ...}, ... } In this case, querying the ORM as follows, which works otherwise, does not work because of the '/' character: kwargs = { 'status__/help/tos__remaining__gt': 0, } Token.objects.filter(**kwargs) It seems like a bug on Django side. It does not seem to escape the parameters properly. I can of course replace the '/' characters before writing to database with something like '_' which wouldn't cause any issues but that would be extra work and breaking the standard. Is there a proper way to escape the '/' while building the query? -
How to display parent table columns in django template
I have two models in django as below: class Directorates(models.Model): entrydate = models.DateTimeField(auto_now=True) directoratename = models.CharField("Directorate", max_length=1000) note = models.CharField("Note", max_length=2000, null=True) insertedby = models.IntegerField(null=False) updatedby = models.IntegerField(null=False, default='0') deletedby = models.IntegerField(null=False, default='0') def __str__(self): return self.directoratename class Departments(models.Model): entrydate = models.DateTimeField(auto_now=True) departmentname = models.CharField("Department", max_length=1000) note = models.CharField("Note", max_length=2000, null=True) directorate = models.ForeignKey(Directorates, on_delete=models.CASCADE) insertedby = models.IntegerField(null=False) updatedby = models.IntegerField(null=False, default='0') deletedby = models.IntegerField(null=False, default='0') def __str__(self): return self.departmentname What I want to do is to display id, departmentname, note from Departments model and directoratename from Directorates model in a table in template. Below is my query which needs to be edited to meet the requirements. Departments.objects.filter(deletedby=0).values("id", "departmentname", "note", "directorate_id").order_by('-id')[:5] Below is the code for table population. {% for d in data %} <tr> <td>{{ d.departmentname }}</td> <td>directoratename to be displayed here.....</td> <td>{{ d.note }}</td> <td class="pull-right"> <form action="{% url 'app:departments-delete' d.id %}" method="post"> {% csrf_token %} <div class="btn-group" role="group" aria-label="..."> <a href="{% url 'app:departments-edit' d.id %}" class="btn btn-warning glyphicon glyphicon-pencil"></a> <button type="submit" class="btn btn-danger glyphicon glyphicon-trash"></button> </div> </form> </td> </tr> {% endfor %} I searched google to find the solution for this however I couldn't find any solution for this. Please help me. -
Django field with autoincrement but in custom format
I'd like to have a field in my model that is in special format and it automatically increments when new entry (project) is added. Format should be similar to YYYY-XXXX which and this would be unique for each project where: YYYY - is current year (year when project is added) XXXX - value that autoincrements automatically per year I add entries (projects) only by admin page. During saving I'd like to insert current year and add autoincremeted value in my "special" field. How to achieve this? -
How to include Google Map as form field in Django
I've done the form at the basis of model: from django.contrib.gis.db import models class Location(models.Model): name = models.CharField() address = models.CharField() coords = models.PointField(null=True) keywords = models.CharField() description = models.TextField() from django.contrib.gis import forms from .models import Location class LocationForm(forms.ModelForm): class Meta: model = Location I need to put Google Maps into the field COORDS in order to pass marker coordinates in DB along with other data. Please, tell, how I should do this. Thanks a lot! -
Testing ModelSerializers
I am trying to learn the best way to test my serializers but having some issues. In the below example I am testing to see if creating new users works correctly. ie can hash the password. The error i am getting is: TypeError: create() missing 1 required positional argument: 'validated_data' Im not really sure what I need to pass in as validated_data serializers.py class UserSerializer(serializers.HyperlinkedModelSerializer): class Meta: model = User fields = ('url', 'username', 'email', 'password') extra_kwargs = { 'url': {'view_name': 'user-detail'}, 'password': {'write_only': True} } def create(self, validated_data): user = User.objects.create_user( username=validated_data['username'], email=validated_data['email']) user.set_password(validated_data['password']) user.save() return user def update(self, instance, validated_data): user = User.objects.get(id=instance.id) user.set_password(validated_data['password']) user.save() return user tests.py class UserSerializerTest(APITestCase): def setUp(self): factory = APIRequestFactory() request = factory.get(path=reverse('user-list')) self.serializer_context = { 'request': Request(request), } def test_create_user(self): from .serializers import UserSerializer data = {'username': 'temp_usr', 'email': 'temp@email.com', 'password': 'temp_pass'} user = UserSerializer(data=data, context=self.serializer_context).create() -
how to get attached entity via put async android client in rails
I am sending a image from android app to server using put method. I am using the async Android library. i attach a entity to put request like client.put(Application.getInstance(), slot.getPutUrl(), fileEntity, CONTENT_TYPE, new AsyncHttpResponseHandler() { i am trying to process this image using paperclip in rails in django we can access this file using request.FILES['file'], how can we access this file and pass it on to paperclip using rails ? -
NoReverseMatch django tutorial 04, 1.10
This is popular question in google search, unfortunately none of the answers helped. To me everything looks good and it should work... but I'm new in django, so... Problem: I was going through django tutorial and in part 4 of making app I got stuck when switched to generic code. error: http://dpaste.com/3J94H9J my views: http://dpaste.com/1KPF1F1 my index.html: {% if latest_question_list %} <ul> {% for question in latest_question_list %} <li><a href="{% url 'myapp:detail' question.id %}">{{ question.question_text }}</a></li> {% endfor %} </ul> {% else %} <p>No polls are available.</p> {% endif %} my detail.html <h1>{{ question.question_text }}</h1> {% if error_message %} <p><strong>{{ error_message }}</strong></p>{% endif %} <form action="{% url 'myapp:vote' question.id %}" method="post"> {% csrf_token %} {% for choice in question.choice_set.all %} <input type="radio" name="choice" id="choice{{ forloop.counter }}" value="{{ choice.id }}" /> <label for="choice{{ forloop.counter }}">{{ choice.choice_text }}</label><br /> {% endfor %} <input type="submit" value="Vote" /> </form> urls.py: from django.conf.urls import include, url from . import views app_name = 'myapp' # this is easy way urlpatterns = [ url(r'^$', views.IndexView.as_view(), name='index'), url(r'^(?P<pk>[0-9]+)/$', views.DetailView.as_view(), name='detail'), url(r'^(?P<pk>[0-9]+)/results/$', views.ResultsView.as_view(), name='results'), url(r'^(?P<question_id>[0-9]+)/vote/$', views.vote, name='vote'), ] I'm very confused why this doesn't work, seems like everything is correct... -
handling special character in image name in django
my problem is simple but i couldn't find anyone that had the same issue so far so i'll explain it here. I've set a little website with django 1.10. Nothing special, but the fact is that ever page of the website makes referece to the same template (index.html) cause the website is so little i though it was the best choice. there is an other page for a form but it is of no importance here. However now i've made a couple of pages in the db to be loaded by the template and i'm adding the images of the pages.They have the same name of the page they're loaded in and i placed them in the website with this hack of the template: <div class="app-auth module"> <div> {% with ''|add:text.title|add:'.jpg' as image_static %} <img src="{% static image_static %}" alt="Blog Image" class="blogimage"/> {% endwith %}</div> <div class="blogtext">{{text.blog_text}}</div> </div> One of the titles contains a whitespace. it is called "Chi Siamo" and gets translated in "Chi%20Siamo" in the request of django. So i renamed the image file in "Chi%20Siamo". There is no typo in it. The image is still not loaded and firebug throws a wonderful "File Not Found" 404 error … -
django simple history plugin: render() got an unexpected keyword argument 'dictionary'
I'm trying using django-simple-history plugin with django version 1.10 According to documentation: 1. Installed plugin using the following command: pip install django-simple-history 2. Added simple_history to INSTALLED_APPS INSTALLED_APPS = [ ... 'simple_history', ] 3. To track history for a model, created an instance of simple_history.models.HistoricalRecords on the model: class ModelClass(models.Model): name1 = models.CharField(max_length=300) name2 = models.CharField(max_length=300) name3 = models.CharField(max_length=300) history = HistoricalRecords(table_name='sampls_modelclass_history') class Meta: db_table = "sample_modelclass" 4. To allow viewing previous model versions on the Django admin site, inherited from the simple_history.admin.SimpleHistoryAdmin class when registering model with the admin site: from django.contrib import admin from simple_history.admin import SimpleHistoryAdmin from .models import ModelClass admin.site.register(ModelClass, SimpleHistoryAdmin) 5. When I try to enter 'History' on particular instance of ModelClass in admin I'm getting the following exception: TypeError: render() got an unexpected keyword argument 'dictionary' Traceback: Environment: Request Method: GET Request URL: http://127.0.0.1:8000/admin/org/modelclass/1/history/ Django Version: 1.10 Python Version: 2.7.11 Installed Applications: ['etc', 'org', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'simple_history'] Installed 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'] Traceback: File "C:\Python27\lib\site-packages\django\core\handlers\exception.py" in inner 39. response = get_response(request) File "C:\Python27\lib\site-packages\django\core\handlers\base.py" in _get_response 187. response = self.process_exception_by_middleware(e, request) File "C:\Python27\lib\site-packages\django\core\handlers\base.py" in _get_response 185. response = wrapped_callback(request, *callback_args, **callback_kwargs) File "C:\Python27\lib\site-packages\django\contrib\admin\options.py" in wrapper 544. return … -
How to efficiently get all django models from database for background processing (celery)?
I have a django app with some celery tasks defined. I need to efficiently get all records from the database, process each one and make some calculations, then save it. This will happen in a celery background task... So, how should I approach this? Is simply iterating over Model.objects.all() efficient? Or, should I use a python hadoop framework, like mrjob? Thanks in advance! -
Counter within django loop
I have the following django / html code: {% for x in fixtures %} <div id="match1" style="display:block">{{x.home_team.teamname}}</div> {% endfor %} The above simply displays all teams from a set of fixtures. It works perfectly as it stands. However, I would like the div id to go up 1 each time it runs through the loop. I.e "match1" then "match2" then "match3" etc. I am assuming javascript is my friend here? but some direction would be appreciated. Many thanks in advance for any assistance :) -
couldn't exec gunicorn_start
#!/bin/bash NAME="trueguild" # Name of the applica$ DJANGODIR=/webapps/trueguild_django/trueguild # Django project dire$ SOCKFILE=/webapps/trueguild_django/run/gunicorn.sock # we will communicte $ USER=trueguild # the user to run as GROUP=webapps # the group to run as NUM_WORKERS=3 # how many worker pro$ DJANGO_SETTINGS_MODULE=trueguild.settings # which settings file$ DJANGO_WSGI_MODULE=trueguild.wsgi # WSGI module name echo "Starting $NAME as $USER" # Activate the virtual environment cd $DJANGODIR source ../bin/activate export DJANGO_SETTINGS_MODULE=$DJANGO_SETTINGS_MODULE export PYTHONPATH=$DJANGODIR:$PYTHONPATH # Create the run directory if it doesn't exist RUNDIR=$(dirname $SOCKFILE) test -d $RUNDIR || mkdir -p $RUNDIR # Start your Django Unicorn # Programs meant to be run under supervisor should not daemonize themselves (do$ exec ../bin/gunicorn ${DJANGO_WSGI_MODULE}:application \ --name $NAME \ --workers $NUM_WORKERS \ --user=$USER --group=$GROUP \ --bind=unix:$SOCKFILE \ --log-level=debug \ --log-file=- I have the above gunicorn_start file.But when i start using supervisorctl then it throws this error supervisor: couldn't exec /webapps/trueguild_django/bin/gunicorn_start: EACCES supervisor: child process was not spawned i am using django along with nginx and gunicorn. How can i start the server using supervisor? -
Optimizing multiple video player objects in page via using JS to display video thumbnails+play buttons instead
Background: I'm developing a video-on-demand feature for a Django web application of mine. At the moment, I'm using azure media player to display my videos (via adaptive bitrate streaming). Videos are served as a sorted list - up to 10 videos are shown per page. The template code is simply: {% for vid in object_list %} <video id="vid{{ forloop.counter }}" class="azuremediaplayer amp-default-skin amp-big-play-centered" controls width="640" height="400" poster="{{ vid.low_res_thumb }}" data-setup='{"logo": { "enabled": false },"language":"ur","nativeControlsForTouch": false}'> <source src="{{ vid.video_manifest }}" type="application/vnd.ms-sstr+xml" /> </video> {% endfor %} Rendering the video player directly like this is heavy. A better way is displaying a video thumbnail with a play icon placed over it (so that it looks like a video player), like so: <div style="width:640px; height:400px;background-image:url({{ vid.low_res_thumb }});background-repeat: no-repeat;background-size: auto 100%;background-position: center;text-align:center;overflow:hidden;"> <img src="{{ STATIC_URL }}img/play_btn.png" style="display:inline-block;margin-top:20%;"> </div> In this approach, once the play button is hit, the video thumbnail is replaced with azure media player with autoplay so that the video plays instantly. Problem: I need to write a JS function that scans the page for videos, adding corresponding thumbnails+play_btns and an onclick event listener that replaces the image with the actual azure media player in autoplay mode. Being a JS beginner, I'm … -
Django Crispy Forms - Field Required
I currently have crispy on my forms template. I am wondering if there is a way to adjust crispy to not require all fields be entered. Any help or suggestions would be greatly appreciated. -
Exception Value: Cannot assign "x": "y" must be a "z" instance
I have a script to pull in football fixtures into my mySQL database. If I do not try to pull in the seasonid it works. But when I put the seasonid in it breaks and I am unsure why. Any help would be appreciated. The models are as follows: class StraightredSeason(models.Model): seasonid = models.IntegerField(primary_key = True) seasonyear = models.CharField(max_length = 4) seasonname = models.CharField(max_length = 36) def __unicode__(self): return self.seasonid class Meta: managed = True db_table = 'straightred_season' class StraightredTeam(models.Model): teamid = models.IntegerField(primary_key=True) teamname = models.CharField(max_length=36) country = models.CharField(max_length=36,null=True) stadium = models.CharField(max_length=36,null=True) homepageurl = models.TextField(null=True) wikilink = models.TextField(null=True) teamcode = models.CharField(max_length=5,null=True) teamshortname = models.CharField(max_length=24,null=True) currentteam = models.PositiveSmallIntegerField(null=True) def __unicode__(self): return self.teamname class Meta: managed = True db_table = 'straightred_team' class StraightredFixture(models.Model): fixtureid = models.IntegerField(primary_key=True) home_team = models.ForeignKey('straightred.StraightredTeam', db_column='hometeamid', related_name='home_fixtures') away_team = models.ForeignKey('straightred.StraightredTeam', db_column='awayteamid', related_name='away_fixtures') fixturedate = models.DateTimeField(null=True) fixturestatus = models.CharField(max_length=24,null=True) fixturematchday = models.IntegerField(null=True) spectators = models.IntegerField(null=True) hometeamscore = models.IntegerField(null=True) awayteamscore = models.IntegerField(null=True) homegoaldetails = models.TextField(null=True) awaygoaldetails = models.TextField(null=True) hometeamyellowcarddetails = models.TextField(null=True) awayteamyellowcarddetails = models.TextField(null=True) hometeamredcarddetails = models.TextField(null=True) awayteamredcarddetails = models.TextField(null=True) soccerseason = models.ForeignKey('straightred.StraightredSeason', db_column='soccerseasonid', related_name='fixture_season') def __unicode__(self): return self.fixtureid class Meta: managed = True db_table = 'straightred_fixture' The StraightredSeason table contains the following: mysql> select * from straightred_season; +----------+------------+------------+ | … -
Popen safe in django view?
My site accept file uploads. In the handling of the upload I need to pass the file data to an external command line utility - ghostscript, using Popen and pipe. Besides the memory limits which I am aware of, are there any problems using Popen inside a view? Does it have prolems like thread safety etc? -
Django- a way to extend permission?
I know it is possible to extend the user model, can the same be done with permission? Basically I need that beside the columns a permission has (name, codename etc.. ) To store some more info per permission. Like a 'permission_type' field and more. I know it is possible to create a seperate one to one model, but I would prefer the first way, since my app must have these extra fields on a permission and it would be an error without it. Or at least a way to force the creation of my one to one model, if extending is impossible.