django-korean-fields
Django์ฉ ์ฃผ๋ฏผ๋ฑ๋ก๋ฒํธ, ์ฌ์ ์๋ฑ๋ก๋ฒํธ, ๋ฒ์ธ๋ฑ๋ก๋ฒํธ, ํด๋ํฐ๋ฒํธ ๋ฑ ํ๊ตญ์์๋ง ์ฐ๋ ํ๋๋ค & ์์ ฏ
๊ธฐ๋ฅ
- ์ฃผ๋ฏผ๋ฒํธ ์ ํจ์ฑ ๊ฒ์ฌ
- ๋ ์ ์ ํจ์ฑ ๊ฒ์ฌ(์ค๋ ๊ฒ์ฌ ํฌํจ)
- ๋ถ์ฌ ๋ฃ๊ธฐ ์ ๋นํ ์๋๊ฒ
- ์๋ค ์ฃผ๋ฏผ๋ฒํธ ์ด๋
- ์์๋ฆฌ ๋ค์ฐ๊ณ ๋์ ๊ณ ์น ๋ ์ง์ฆ๋๊ฒ ์๊พธ ๋ท์๋ฆฌ๋ก ๋ ๋ผ๊ฐ์ง ์์
- ๊ทธ ์ธ ์ต๊ฐํ๊ฑฐ ๊ทธ๋ฅ ๋ค ๋จ
TODO
- ์ฃผ๋ฏผ๋ฑ๋ก๋ฒํธ ํ๋ & ์์ ฏ
- ์ฌ์ ์๋ฑ๋ก๋ฒํธ ํ๋ & ์์ ฏ
- ๋ฒ์ธ๋ฑ๋ก๋ฒํธ ํ๋ & ์์ ฏ
- ์์ ฏ n๊ฐ์ ๋ค์ค ํ๋์ฉ์ผ๋ก ๋ง๋ฅํ
- ํด๋ํฐ๋ฒํธ ํ๋
- ์ฌ์ ์๋ฑ๋ก๋ฒํธ Validator
- ๋ฒ์ธ๋ฑ๋ก๋ฒํธ Validator
- ํด๋ํฐ๋ฒํธ Validator
- ์นด๋ ์ ํจ๊ธฐ๊ฐ ํ๋
- ์ฃผ๋ฏผ๋ฑ๋ก์ฆ ๋ฐ๊ธ์ผ์ ํ๋
- ์ด์ ๋ฉดํ ๋ฒํธ ํ๋
- ๋ ๋ญ ๋ฃ์์ง ์๊ฐํ๊ธฐ
Demo
Example
example ํด๋ ์ฐธ์กฐ
์์กด์ฑ
- Twitter bootstrap 3 or 4
- jQuery
- Django (2.0+ ๋ง ํ ์คํธ)
- django-bootstrap3 ๋๋ django-bootstrap4 ์ฌ์ฉํ๋ฉด ์ข์(์ํด๋๋๊ณ ...)
SETUP
- Install
pip install django-korean-fields
- INSTALL_APPS์ 'korean'์ถ๊ฐ
INSTALLED_APPS = [
'korean',
...
'my_app',
...
'django.contrib.admin
- ํ ํ๋ฆฟ ์๋จ์ Media ์ถ๊ฐ ex>
{% extends "admin/base_site.html" %}
{% load i18n %}
{% load admin_static suit_tags %}
{% block extrastyle %}
<link type="text/css" rel="stylesheet" href="/static/css/basic.css" />
{{ block.super }}
{{ form.media }}
{% endblock %}
์ฌ์ฉ๋ฒ
model์์ ์ฌ์ฉ ์
from django.db import models
from jumin.fields import JuminField
class YourEverythingModel(models.Model):
name = models.CharField(u'์ค๋ช
', max_length=20)
cell = CellPhoneField(u'๋ด ํด๋ํฐ ๋ฒํธ')
jumin = JuminField(u'๋ด ์ฃผ๋ฏผ๋ฒํธ')
saup = SaupField(u'๋ด ์ฌ์
์ ๋ฑ๋ก ๋ฒํธ')
bupin = BupinField(u'๋ด(?) ๋ฒ์ธ ๋ฑ๋ก ๋ฒํธ')
mom_jumin = JuminField(u'์๋ง ์ฃผ๋ฏผ๋ฒํธ')
dad_jumin = JuminField(u'์๋น ์ฃผ๋ฏผ๋ฒํธ')
uncle_jumin = JuminField(u'์ผ์ด ์ฃผ๋ฏผ๋ฒํธ')
your_secret = models.TextField(u'๋น๋ฐ์ ๋ณด')
...
form์์ ์ฌ์ฉ ์
class TestForm(forms.Form):
jumin = JuminFormField()
cell = CelPhoneFormField()
another = CharField(label='test', max_length=10, required=False)