Skip to main content

Tempus Dominus Bootstrap 4 DateTime 选择器的 Django 小部件。

项目描述

Django Tempus Dominus

Django Tempus Dominus 为Tempus Dominus Bootstrap 4 DateTime日期和时间选择器提供 Django 小部件。

关于此软件包的未来的说明

该软件包的父项目 Tempus Dominus 正在重新设计。在父项目发布版本 6 之前,此包将不会收到任何功能更新,这将弃用 jQuery 和 Bootstrap 作为依赖项。发生这种情况时,我们将更新此软件包以支持 v6。

安装

  • 来自 PyPI:pip install django-tempus-dominus

然后添加tempus_dominusINSTALLED_APPS您的 Django 设置中。

使用和 Django 设置

可以使用以下设置:

  • TEMPUS_DOMINUS_LOCALIZE(默认值:False):如果True,小部件将被翻译成选定的浏览器语言并使用本地化的日期和时间格式。
  • TEMPUS_DOMINUS_INCLUDE_ASSETS(默认: True): if True, 从 Cloudflare 的 CDN 加载 Tempus Dominus 和momentJS 和 CSS,否则加载 JS 和 CSS 由您决定。
  • TEMPUS_DOMINUS_DATE_FORMAT(默认YYYY-MM-DD:)
  • TEMPUS_DOMINUS_DATETIME_FORMAT(默认YYYY-MM-DD HH:mm:ss:)
  • TEMPUS_DOMINUS_TIME_FORMAT(默认HH:mm:ss:)

提供了三个小部件:

  • DatePicker
    • 默认为Lif TEMPUS_DOMINUS_LOCALIZEis True,否则TEMPUS_DOMINUS_DATE_FORMAT
  • DateTimePicker
    • 默认为L LTSif TEMPUS_DOMINUS_LOCALIZEis True,否则TEMPUS_DOMINUS_DATETIME_FORMAT
  • TimePicker
    • 默认为LTSif TEMPUS_DOMINUS_LOCALIZEis True,否则TEMPUS_DOMINUS_TIME_FORMAT

在您的 Django 表单中,您可以像这样使用小部件:

from django import forms
from tempus_dominus.widgets import DatePicker, TimePicker, DateTimePicker

class MyForm(forms.Form):
    date_field = forms.DateField(widget=DatePicker())
    date_field_required_with_min_max_date = forms.DateField(
        required=True,
        widget=DatePicker(
            options={
                'minDate': '2009-01-20',
                'maxDate': '2017-01-20',
            },
        ),
        initial='2013-01-01',
    )
    """
    In this example, the date portion of `defaultDate` is irrelevant;
    only the time portion is used. The reason for this is that it has
    to be passed in a valid MomentJS format. This will default the time
    to be 14:56:00 (or 2:56pm).
    """
    time_field = forms.TimeField(
        widget=TimePicker(
            options={
                'enabledHours': [9, 10, 11, 12, 13, 14, 15, 16],
                'defaultDate': '1970-01-01T14:56:00'
            },
            attrs={
                'input_toggle': True,
                'input_group': False,
            },
        ),
    )
    datetime_field = forms.DateTimeField(
        widget=DateTimePicker(
            options={
                'useCurrent': True,
                'collapse': False,
            },
            attrs={
                'append': 'fa fa-calendar',
                'icon_toggle': True,
            }
        ),
    )

然后在您的模板中,包含 jQuery,{{ form.media }}并呈现表单:

<html>
  <head>
    {# Include FontAwesome; required for icon display #}
    <link rel="stylesheet" href="https://netdna.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.css">

    {# Include Bootstrap 4 and jQuery #}
    <link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" integrity="sha384-MCw98/SFnGE8fJT3GXwEOngsV7Zt27NXFoaoApmYm81iuXoPkFOJwJ8ERdknLPMO" crossorigin="anonymous">
    <script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>

    {# Django Tempus Dominus assets are included in `{{ form.media }}` #}
    {{ form.media }}
  </head>

  <body>
    <div class="container">
      <div class="row">
        <div class="col">
          <form method="post" action=".">
            {% csrf_token %}
            {{ form.as_p }}
          </form>
        </div>
      </div>
    </div>
  </body>
</html>

小部件选项

  • options(字典):这个字典将被传递给 Tempus Dominus。此处提供了完整的选项列表
  • input_toggle(布尔值,默认值True):控制单击输入字段是否切换日期选择器弹出窗口。通常在使用图标时设置为 False。
  • input_group(布尔值,默认值True):是否input-group在选择器周围包含 Bootstrap 4。
  • size(字符串):控制输入组(smalllarge)的大小。默认为默认大小。
  • prepend(字符串):要添加到输入字段 ( ) 的 Font Awesome 图标的名称fa fa-calendar
  • append(字符串):要附加到输入字段 ( fa fa-calendar) 的 Font Awesome 图标的名称。
  • icon_toggle(布尔值,默认值True):控制单击图标是否切换日期选择器弹出窗口。通常在使用图标时设置为 False。

发行说明和贡献者

维护者

该软件包主要由沃顿研究数据服务部的工作人员维护。我们很高兴沃顿商学院让我们有一定的时间为开源项目做出贡献。我们添加项目所需的功能,并尽可能跟上问题和拉取请求。由于时间限制(我们的全职工作!),没有拉取请求的功能请求可能无法实现,但我们始终对新想法持开放态度,并感谢贡献和我们的包用户。

下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

django-tempus-dominus-5.1.2.17.tar.gz (10.3 kB 查看哈希)

已上传 source

内置分布

django_tempus_dominus-5.1.2.17-py3-none-any.whl (11.0 kB 查看哈希

已上传 py3