Nicedit widget for django with image upload feature.
Project description
NicEdit widget for django with image upload feature.
NicEdit home: http://nicedit.com/
Blog post: NicEdit widget for Django
Versions
0.23 - use with Django<1.6
0.24 - use with Django==1.6
1.1 - use with Django>=1.7
Installation
To get the latest stable release from PyPi
$ pip install django-nicedit
To get the latest commit from GitHub
$ pip install -e git+git://github.com/nanvel/django-nicedit.git#egg=nicedit
Add nicedit to your INSTALLED_APPS
INSTALLED_APPS = (
...
'nicedit',
)
Add the nicedit URLs to your urls.py
urlpatterns = patterns('',
...
url(r'^nicedit/', include('nicedit.urls')),
)
Don’t forget to migrate your database
python manage.py migrate nicedit
MEDIA_ROOT should be specified, example:
MEDIA_ROOT = os.path.join(os.path.dirname('__file__'), '../media')
MEDIA_URL = '/media/'
Add to urls configuration:
from django.conf.urls.static import static
from django.conf import settings
if settings.DEBUG:
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
Usage
forms.py:
from django import forms
from nicedit.widgets import NicEditWidget
class MessageForm(forms.Form):
message = forms.CharField(
widget=NicEditWidget(attrs={'style': 'width: 800px;'})
)
views.py:
from django.shortcuts import render
from .forms import MessageForm
def home(request):
form = MessageForm()
return render(request, 'home.html', {'form': form})
template:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>NicEdit widget</title>
{{ form.media }}
</head>
<body>
<form action='.' method='post'>
{% csrf_token %}
{{ form.message }}
<button type="submit">Submit</button>
</form>
</body>
</html>
See testproject for example.
Usage in admin:
# -*- coding: utf-8 -*-
from django import forms
from django.contrib import admin
from nicedit.widgets import NicEditAdminWidget
from .models import Item
class ItemAdminForm(forms.ModelForm):
class Meta:
model = Item
widgets = {
'text': NicEditAdminWidget(
attrs={'style': 'width: 610px;'},
js_options={"buttonList": [
'save', 'bold', 'italic', 'underline', 'left', 'center',
'right', 'justify', 'ol', 'ul', 'fontSize', # 'fontFamily',
'fontFormat', 'indent', 'outdent', 'image', 'upload', 'link',
'unlink', 'forecolor', 'bgcolor', 'xhtml']
}
)
}
class ItemAdmin(admin.ModelAdmin):
form = ItemAdminForm
Contribute
If you want to contribute to this project, please perform the following steps
# Fork this repository
# Clone your fork
$ virtualenv .env --no-site-packages
$ source .env/bin/activate
$ python setup.py install
$ pip install -r test_requirements.txt
$ git co -b feature_branch master
# Implement your feature and tests
$ git add . && git commit
$ git push -u origin feature_branch
# Send us a pull request for your feature branch
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file django-nicedit-1.1.1.tar.gz
.
File metadata
- Download URL: django-nicedit-1.1.1.tar.gz
- Upload date:
- Size: 34.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 69290d2d76234b6105d1d0013bdbe080946200fd4e61bdf7164c07275d08d99f |
|
MD5 | cc7e9417739b7e86f2202f36bb4d7d48 |
|
BLAKE2b-256 | c252490dbe0b1ef01096e71d2299855080a09ff8b55c3d3a7e4ad473d5fa77cd |