Django-datetime-widget 是 Django 框架中用于 DateField、Timefiled 和 DateTimeField 的一个简单而干净的小部件。它基于 Bootstrap 日期时间选择器,同时支持 Bootstrap 3 和 Bootstrap 2
项目描述
django-datetime-widget
=======================
.. 图片:: https://pypip.in/v/django-datetime-widget/badge。 png
:target: https://crate.io/packages/django-datetime-widget
.. 图片:: https://pypip.in/d/django-datetime-widget/badge.png
:target: https:// crate.io/packages/django-datetime-widget
``django-datetime-widget`` 是一个简单而干净的选择器小部件,用于 Django 框架中的 DateField、Timefiled 和 DateTimeField。它基于 `Bootstrap 日期时间选择器
<https://github.com/smalot/bootstrap-datetimepicker>`_,同时支持 Bootstrap 3 和 Bootstrap 2。
当您在模型/表单中使用 DateField、TimeField 或 DateTimeField 以显示具有特定日期/时间格式的相应选择器时,``django-datetime-widget`` 是完美的。现在它支持 django 本地化。
可用小部件
-----------------
* **DateTimeWidget** :使用日历和时间选择器显示输入。
* **DateWidget** :仅使用日历选择器显示输入。
* **TimeWidget** :仅使用时间选择器显示输入。
`查看演示页面 <http://bit.ly/django-datetime-widget-demo-page>`_
要求
------------
* `Bootstrap <http://getbootstrap.com/ >`_ 2.0.4+ 和 3.2.0
* `jQuery <http://jquery.com/>`_ 1.7.1+
截图
===========
* 十年视图
.. image:: https://raw.github.com/smalot/bootstrap-datetimepicker/master/screenshot/standard_decade.png
此视图允许选择 10 年范围内的年份。
* 年视图
.. image:: https://raw.github.com/smalot/bootstrap-datetimepicker/master/screenshot/standard_year.png
此视图允许选择所选年份的月份。
* 月视图
.. image:: https://raw.github.com/smalot/bootstrap-datetimepicker/master/screenshot/standard_month.png
此视图允许选择所选月份的日期。
* 日视图
.. image:: https://raw.github.com/smalot/bootstrap-datetimepicker/master/screenshot/standard_day.png
此视图允许选择所选日期的小时。
* 小时视图
.. image:: https://raw.github.com/smalot/bootstrap-datetimepicker/master/screenshot/standard_hour.png
此视图允许选择所选小时内的分钟预设值。
已选择 5 分钟的范围(默认情况下)以将按钮数量限制为可接受的值,但它可以被 <code>minuteStep</code> 属性覆盖。
* 日视图 - 子午线
.. image:: https://raw.github.com/smalot/bootstrap-datetimepicker/master/screenshot/standard_day_meridian.png日视图
和小时视图都支持子午线。
要使用它,只需启用 <code>showMeridian</code> 属性。
* 小时视图 - 子午线
.. 图片:: https://raw.github.com/smalot/bootstrap-datetimepicker/master/screenshot/standard_hour_meridian。
安装
------------
#。使用 pip 安装 django-datetime-widget。例如::
pip install django-datetime-widget
#。将 ``datetimewidget`` 添加到您的 INSTALLED_APPS。
如果你想使用本地化:
#.
在 settings.py #中设置 USE_L10N = True、USE_TZ = True 和 USE_I18N = True 。将 'django.middleware.locale.LocaleMiddleware' 添加到 settings.py
# 中的 MIDDLEWARE_CLASSES。当您创建小部件时,添加 usel10n = True 类似属性:DateTimeWidget(usel10n=True)
Basic Configuration
--------------------
#. 创建您的模型表单并将 DateTimeWidget 小部件设置为您的 DateTimeField ::
from datetimewidget.widgets import DateTimeWidget
class yourForm(forms.ModelForm):
class Meta:
model = yourModel
widgets = {
#使用本地化和引导 3
'datetime': DateTimeWidget(attrs={'id':"yourdatetimeid"}, usel10n = True, bootstrap_version=3)
}
#. 下载`twitter bootstrap <http://getbootstrap.com/>`_到你的静态文件夹。
#. 在表单模板中添加指向 jquery、bootstrap 和 form.media::
<head>
....
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery. min.js"></script>
<link href="{{ STATIC_URL }}css/bootstrap.css" rel="stylesheet" type="text/css"/>
<
{{ form.media }}
....
</head>
<body>
<form action="" method="POST">
{% csrf_token %}
{{ form.as_table }}
<input id="submit" type ="提交" 值="提交">
</form>
</body>
#. 可选:您可以将选项字典添加到 DatetimeWidget 以自定义您的输入,例如使用 meridian::
dateTimeOptions = {
'format': 'dd/mm/yyyy HH:ii P',
'autoclose': True,
'显示经络':
'datetime': DateTimeWidget(options = dateTimeOptions)
}
!!! 如果您将“格式”添加到选项中并同时将 usel10n 设置为 True,则第一个将被忽略。!!!
选项
=======
选项属性可以接受以下内容:
* 格式
字符串。默认值:'dd/mm/yyyy hh:ii'
日期格式,P、hh、HH、ii、ss、dd、yy、yyyy 的组合。
* P:大写的子午线('AM' 或 'PM') - 根据区域设置文件
* ss:秒,2 位数字,前导零
* ii:分钟,2 位数字,前导零
* hh:小时,2 位数字,前导zeros - 24 小时格式
* HH : 小时,带前导零的 2 位数字 - 12 小时格式
* dd : 月份中的日期,带前导零的 2 位数字
* yy :一年的两位数字表示
* yyyy :一年的完整数字表示,4 位
* weekStart
整数。默认值:0
星期几开始。“0”(星期日)到“6”(星期六)
* startDate
日期。默认值:开始时间
可以选择的最早日期;所有较早的日期都将被禁用。
* endDate
日期。默认值:结束时间
可以选择的最晚日期;所有以后的日期都将被禁用。
* daysOfWeekDisabled
字符串。默认值:''
应禁用的星期几。值为 0(星期日)到 6(星期六)。多个值应以逗号分隔。示例:禁用周末:'0,6'。
* 自动关闭
字符串。默认值:'true'
选择日期时是否立即关闭 datetimepicker。
* startView
整数。默认值:2
datetimepicker 打开时应显示的视图。
接受以下值:
* '0' 用于小时视图
* '1' 用于日视图
* '2' 用于月视图(默认)
* '3' 用于 12 个月概览
* '4' 用于 10 年概述。对于出生日期日期时间选择器很有用。
* minView
整数。默认值:0
datetimepicker 应显示的最低视图。
* 最大视图
整数。默认值:4
datetimepicker 应显示的最高视图。
* 今天Btn
布尔值。默认值:False
如果为 true ,则在 datetimepicker 底部显示一个“今天”按钮以选择当前日期。如果为真,“今天”按钮只会将当前日期移动到视图中。
* 今天高亮
布尔值。默认值:False
如果为 true,则突出显示当前日期。
* 分步
整数。默认值:5
用于构建小时视图的增量。每 <code>minuteStep</code> 分钟创建一个按钮。
* 选择器位置
字符串。默认值:'bottom-right'(其他支持的值:'bottom-left')
此选项允许将选择器放置在组件实现的输入字段下方,而不是按钮右下角的默认位置。
布尔值。默认值:False
此选项将为日视图和小时视图启用子午线视图。
* clearBtn
布尔值。默认值:False
如果为 true,则在输入值的右侧显示“清除”按钮。更改日志--------- * 0.9.3V
* FIX #48 * Python 3 支持* 0.9.2V * FIX #46 * 0.9.1V * python 选项正确转换为 javascript 选项。 * 修复 #38 #40。 * 代码重构和错误修复。* 0.9V * 将引导日期时间选择器更新到最新版本。 * 关闭 #20(支持引导程序 2 和 3)。 * 关闭 #17 TimeWidget。 * 关闭 #16 日期小部件。
* 输入值右侧的新清除按钮。
* 添加 dateTimeExample django 项目。
* 0.6V
* 添加清除按钮
* 修复 TypeError 错误
* 支持本地化
* 使用 bootstrap-datetime-picker 的最后一次提交更新静态文件
* 更新 js lib,本地本地化,感谢@quantum13
* autoclose 默认为 true
贡献
---- ------
1. 检查未解决的问题或打开一个新问题以围绕功能想法或错误开始讨论。有一个 `Contributor Friendly`_ 标记对于那些对代码库不太熟悉的人来说应该是理想的。
* 如果您对某个问题或您的更改感到不舒服或不确定,请随时发送电子邮件至@asaglimbeni,他将很乐意通过电子邮件、Skype、远程配对或任何您喜欢的方式为您提供帮助。
2. 从 GitHub 上的 `the repository`_ fork develop 分支,开始对 **develop** 分支(或从它的分支)进行更改。
3. 请表明该错误已修复或该功能按预期工作。
4. 发送拉取请求并对维护者进行错误处理,直到它被合并和发布。:)
5. 您的更改将在 django_datetime_widget 的下一个版本中发布!
.. _`存储库`:https://github.com/asaglimbeni/django-datetime-widget
.. _Contributor Friendly: https://github.com/asaglimbeni/django-datetime-widget/issues?direction=desc&labels=Contributor+Friendly&page=1&sort=updated&state=open
TODO
----
#. DateTime 范围的小部件。
=======================
.. 图片:: https://pypip.in/v/django-datetime-widget/badge。 png
:target: https://crate.io/packages/django-datetime-widget
.. 图片:: https://pypip.in/d/django-datetime-widget/badge.png
:target: https:// crate.io/packages/django-datetime-widget
``django-datetime-widget`` 是一个简单而干净的选择器小部件,用于 Django 框架中的 DateField、Timefiled 和 DateTimeField。它基于 `Bootstrap 日期时间选择器
<https://github.com/smalot/bootstrap-datetimepicker>`_,同时支持 Bootstrap 3 和 Bootstrap 2。
当您在模型/表单中使用 DateField、TimeField 或 DateTimeField 以显示具有特定日期/时间格式的相应选择器时,``django-datetime-widget`` 是完美的。现在它支持 django 本地化。
可用小部件
-----------------
* **DateTimeWidget** :使用日历和时间选择器显示输入。
* **DateWidget** :仅使用日历选择器显示输入。
* **TimeWidget** :仅使用时间选择器显示输入。
`查看演示页面 <http://bit.ly/django-datetime-widget-demo-page>`_
要求
------------
* `Bootstrap <http://getbootstrap.com/ >`_ 2.0.4+ 和 3.2.0
* `jQuery <http://jquery.com/>`_ 1.7.1+
截图
===========
* 十年视图
.. image:: https://raw.github.com/smalot/bootstrap-datetimepicker/master/screenshot/standard_decade.png
此视图允许选择 10 年范围内的年份。
* 年视图
.. image:: https://raw.github.com/smalot/bootstrap-datetimepicker/master/screenshot/standard_year.png
此视图允许选择所选年份的月份。
* 月视图
.. image:: https://raw.github.com/smalot/bootstrap-datetimepicker/master/screenshot/standard_month.png
此视图允许选择所选月份的日期。
* 日视图
.. image:: https://raw.github.com/smalot/bootstrap-datetimepicker/master/screenshot/standard_day.png
此视图允许选择所选日期的小时。
* 小时视图
.. image:: https://raw.github.com/smalot/bootstrap-datetimepicker/master/screenshot/standard_hour.png
此视图允许选择所选小时内的分钟预设值。
已选择 5 分钟的范围(默认情况下)以将按钮数量限制为可接受的值,但它可以被 <code>minuteStep</code> 属性覆盖。
* 日视图 - 子午线
.. image:: https://raw.github.com/smalot/bootstrap-datetimepicker/master/screenshot/standard_day_meridian.png日视图
和小时视图都支持子午线。
要使用它,只需启用 <code>showMeridian</code> 属性。
* 小时视图 - 子午线
.. 图片:: https://raw.github.com/smalot/bootstrap-datetimepicker/master/screenshot/standard_hour_meridian。
安装
------------
#。使用 pip 安装 django-datetime-widget。例如::
pip install django-datetime-widget
#。将 ``datetimewidget`` 添加到您的 INSTALLED_APPS。
如果你想使用本地化:
#.
在 settings.py #中设置 USE_L10N = True、USE_TZ = True 和 USE_I18N = True 。将 'django.middleware.locale.LocaleMiddleware' 添加到 settings.py
# 中的 MIDDLEWARE_CLASSES。当您创建小部件时,添加 usel10n = True 类似属性:DateTimeWidget(usel10n=True)
Basic Configuration
--------------------
#. 创建您的模型表单并将 DateTimeWidget 小部件设置为您的 DateTimeField ::
from datetimewidget.widgets import DateTimeWidget
class yourForm(forms.ModelForm):
class Meta:
model = yourModel
widgets = {
#使用本地化和引导 3
'datetime': DateTimeWidget(attrs={'id':"yourdatetimeid"}, usel10n = True, bootstrap_version=3)
}
#. 下载`twitter bootstrap <http://getbootstrap.com/>`_到你的静态文件夹。
#. 在表单模板中添加指向 jquery、bootstrap 和 form.media::
<head>
....
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery. min.js"></script>
<link href="{{ STATIC_URL }}css/bootstrap.css" rel="stylesheet" type="text/css"/>
<
{{ form.media }}
....
</head>
<body>
<form action="" method="POST">
{% csrf_token %}
{{ form.as_table }}
<input id="submit" type ="提交" 值="提交">
</form>
</body>
#. 可选:您可以将选项字典添加到 DatetimeWidget 以自定义您的输入,例如使用 meridian::
dateTimeOptions = {
'format': 'dd/mm/yyyy HH:ii P',
'autoclose': True,
'显示经络':
'datetime': DateTimeWidget(options = dateTimeOptions)
}
!!! 如果您将“格式”添加到选项中并同时将 usel10n 设置为 True,则第一个将被忽略。!!!
选项
=======
选项属性可以接受以下内容:
* 格式
字符串。默认值:'dd/mm/yyyy hh:ii'
日期格式,P、hh、HH、ii、ss、dd、yy、yyyy 的组合。
* P:大写的子午线('AM' 或 'PM') - 根据区域设置文件
* ss:秒,2 位数字,前导零
* ii:分钟,2 位数字,前导零
* hh:小时,2 位数字,前导zeros - 24 小时格式
* HH : 小时,带前导零的 2 位数字 - 12 小时格式
* dd : 月份中的日期,带前导零的 2 位数字
* yy :一年的两位数字表示
* yyyy :一年的完整数字表示,4 位
* weekStart
整数。默认值:0
星期几开始。“0”(星期日)到“6”(星期六)
* startDate
日期。默认值:开始时间
可以选择的最早日期;所有较早的日期都将被禁用。
* endDate
日期。默认值:结束时间
可以选择的最晚日期;所有以后的日期都将被禁用。
* daysOfWeekDisabled
字符串。默认值:''
应禁用的星期几。值为 0(星期日)到 6(星期六)。多个值应以逗号分隔。示例:禁用周末:'0,6'。
* 自动关闭
字符串。默认值:'true'
选择日期时是否立即关闭 datetimepicker。
* startView
整数。默认值:2
datetimepicker 打开时应显示的视图。
接受以下值:
* '0' 用于小时视图
* '1' 用于日视图
* '2' 用于月视图(默认)
* '3' 用于 12 个月概览
* '4' 用于 10 年概述。对于出生日期日期时间选择器很有用。
* minView
整数。默认值:0
datetimepicker 应显示的最低视图。
* 最大视图
整数。默认值:4
datetimepicker 应显示的最高视图。
* 今天Btn
布尔值。默认值:False
如果为 true ,则在 datetimepicker 底部显示一个“今天”按钮以选择当前日期。如果为真,“今天”按钮只会将当前日期移动到视图中。
* 今天高亮
布尔值。默认值:False
如果为 true,则突出显示当前日期。
* 分步
整数。默认值:5
用于构建小时视图的增量。每 <code>minuteStep</code> 分钟创建一个按钮。
* 选择器位置
字符串。默认值:'bottom-right'(其他支持的值:'bottom-left')
此选项允许将选择器放置在组件实现的输入字段下方,而不是按钮右下角的默认位置。
布尔值。默认值:False
此选项将为日视图和小时视图启用子午线视图。
* clearBtn
布尔值。默认值:False
如果为 true,则在输入值的右侧显示“清除”按钮。更改日志--------- * 0.9.3V
* FIX #48 * Python 3 支持* 0.9.2V * FIX #46 * 0.9.1V * python 选项正确转换为 javascript 选项。 * 修复 #38 #40。 * 代码重构和错误修复。* 0.9V * 将引导日期时间选择器更新到最新版本。 * 关闭 #20(支持引导程序 2 和 3)。 * 关闭 #17 TimeWidget。 * 关闭 #16 日期小部件。
* 输入值右侧的新清除按钮。
* 添加 dateTimeExample django 项目。
* 0.6V
* 添加清除按钮
* 修复 TypeError 错误
* 支持本地化
* 使用 bootstrap-datetime-picker 的最后一次提交更新静态文件
* 更新 js lib,本地本地化,感谢@quantum13
* autoclose 默认为 true
贡献
---- ------
1. 检查未解决的问题或打开一个新问题以围绕功能想法或错误开始讨论。有一个 `Contributor Friendly`_ 标记对于那些对代码库不太熟悉的人来说应该是理想的。
* 如果您对某个问题或您的更改感到不舒服或不确定,请随时发送电子邮件至@asaglimbeni,他将很乐意通过电子邮件、Skype、远程配对或任何您喜欢的方式为您提供帮助。
2. 从 GitHub 上的 `the repository`_ fork develop 分支,开始对 **develop** 分支(或从它的分支)进行更改。
3. 请表明该错误已修复或该功能按预期工作。
4. 发送拉取请求并对维护者进行错误处理,直到它被合并和发布。:)
5. 您的更改将在 django_datetime_widget 的下一个版本中发布!
.. _`存储库`:https://github.com/asaglimbeni/django-datetime-widget
.. _Contributor Friendly: https://github.com/asaglimbeni/django-datetime-widget/issues?direction=desc&labels=Contributor+Friendly&page=1&sort=updated&state=open
TODO
----
#. DateTime 范围的小部件。