Str*_*ire 11 django datetime date datepicker django-crispy-forms
那里有很多日期/日期时间选择器实现.是否有任何与Django和Crispy Forms集成的特别好,它们是如何使用的?
我希望尽量减少开发工作,最大限度地提高简单性,并利用Django本地化.
日期字段的Django/Crispy标准输出:
<input class="dateinput form-control" id="id_birth_date" name="birth_date" type="text" value="21/07/2015">
Run Code Online (Sandbox Code Playgroud)
在模型中:
birth_date = models.DateField(verbose_name='D.O.B', auto_now_add=False, auto_now=False)
Run Code Online (Sandbox Code Playgroud)
谢谢!
编辑:
档案型号:
from django.db import models
class Profile(models.Model):
birth_date = models.DateField(verbose_name='D.O.B', auto_now_add=False, auto_now=False)
Run Code Online (Sandbox Code Playgroud)
个人资料表格:
from django import forms
from profiles.models import Profile
class ProfileForm(forms.ModelForm):
class Meta:
model = Profile
birth_date = forms.DateField(
widget=forms.TextInput(
attrs={'type': 'date'}
)
)
Run Code Online (Sandbox Code Playgroud)
档案查看:
from django.shortcuts import get_object_or_404
from django.contrib.auth import get_user_model
from profiles.models import Profile
from profiles.forms import ProfileForm
User = get_user_model()
def edit(request):
profile = get_object_or_404(Profile, user=request.user)
form = ProfileForm(request.POST or None, request.FILES or None, instance=profile)
if request.method == 'POST' and form.is_valid():
form.save()
context = {
'form': form,
'page_title': 'Edit Profile',
}
return render(request, 'profiles/edit.html', context)
Run Code Online (Sandbox Code Playgroud)
档案编辑模板:
<form enctype="multipart/form-data" method="POST" action=".">
{% csrf_token %}
{{ form }}
<input class='btn btn-primary' type="submit" value="Submit" />
</form>
Run Code Online (Sandbox Code Playgroud)
Aus*_*tin 15
不是一个脆弱形式的答案,但只要输入具有属性type,新的浏览器将为您输入日期选择器date.这属于最小开发努力的范畴.
date_field = forms.DateField(
widget=forms.TextInput(
attrs={'type': 'date'}
)
)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8048 次 |
| 最近记录: |