Extra widgets for django using gentelella.
Project description
This app helps you to integrate Django apps with Gentelella building extra widgets for forms and speciall methods to render forms in templates.
See Documentation
Installation
Installing from repository (Updated frequently, most of great functionalities are not in pip yet ).
pip install git+https://github.com/luisza/django-gentelella-widgets.git#egg=djgentelella
An stable version on pip, but not all available widget are in this release (new release comming soon)
pip install djgentelella
Configure your settings
INSTALLED_APPS = [ ..
'djgentelella',
'mptt',
'rest_framework',
'chunked_upload',
'markitup',
]
USE_L10N = False
MARKITUP_FILTER = ('markdown.markdown', {'safe_mode': True})
MARKITUP_SET = 'markitup/sets/markdown/'
JQUERY_URL = None
DATE_INPUT_FORMATS=[
'%Y-%m-%d', '%d/%m/%Y', '%d/%m/%y'
]
DATE_FORMAT= ['%d/%m/%Y',]
DATETIME_INPUT_FORMATS = [
'%m/%d/%Y %H:%M',
'%d/%m/%Y %H:%M',
'%Y-%m-%d %H:%M',
'%d/%m/%y %H:%M'
]
Run migrations
python manage.py migrate
Create statics files downloading from internet (you need to install requests for this step).
pip install requests
python manage.py loaddevstatic
Add djgentelella urls in your project urls.py file
from djgentelella.urls import urlpatterns as djgentelellaurls
urlpatterns = djgentelellaurls + [
...
]
Usage
In forms
from djgentelella.forms.forms import GTForm
from djgentelella.widgets import core as genwidgets
class myform(GTForm, forms.ModelForm):
class Meta:
model = MyObject
fields = '__all__'
widgets = {
'name': genwidgets.TextInput,
'borddate': genwidgets.DateInput,
'email': genwidgets.EmailMaskInput
}
In templates working with forms
{{ form.as_plain }}
{{ form.as_inline }}
{{ form.as_horizontal }}
In templates using base template
{% extends 'gentelella/base.html' %}
Take a look this file to note the template block that you can overwrite
widgets
There are several widgets implemented this is a list of what you can use
TextInput
NumberInput
EmailInput
URLInput
PasswordInput
Textarea
TextareaWysiwyg (not working yet)
DateInput
DateTimeInput
TimeInput
CheckboxInput
YesNoInput
Select (jquery select2)
SelectMultiple (jquery select2)
SelectTail
SelectMultipleTail
RadioSelect
NullBooleanSelect
CheckboxSelectMultiple
SplitDateTimeWidget (not ready)
SplitHiddenDateTimeWidget (not ready)
SelectDateWidget (not ready)
PhoneNumberMaskInput
DateMaskInput
DateTimeMaskInput
EmailMaskInput
DateRangeTimeInput
DateRangeInput
AutocompleteSelect
AutocompleteSelectMultiple
Formset implementation
Remote select2 views.
And More see demo app.
Notes for development
base.js is autogenerated so you need to call
python manage.py createbasejs
Remember update the package version before make deploy it on server.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.