2013-05-09 4 views
0

views.pyкак передать переменную даты в виде

def when(request): 
user = request.user 
report = Report.objects.get(user=request.user) 
reportform = ReportForm(instance=report) 

settings = Settings.objects.get(user=request.user) 
settingsForm = SettingsForm(instance=settings) 
settings=Settings.objects.get(user=2) 
if settings.date_format == '0': 
    date=datetime.datetime.strptime('10/31/2012','%m/%d/%Y').strftime('%d/%m/%Y') 

else: 
     date=datetime.datetime.strptime('31/10/2012','%d/%m/%Y').strftime('%m/%d/%Y') 
if request.method == 'POST':    
    reportform = ReportForm(instance=report,data=request.POST) 
    if reportform.is_valid(): 
     report = reportform.save(commit=False) 
     report.user = request.user 
     report.save() 
     return redirect('/member/media/') 

return render_to_response('incident/when.html',{ 
       'newreport_menu': True, 
       'form': reportform, 
       'date':date, 


       }, 
       context_instance=RequestContext(request)) 

models.py

class Report(models.Model): 
    user = models.ForeignKey(User, null=False) 
    manual_date = models.DateField('Another date', null=True, blank=True) 

template.html

{{ form.manual_date }}{{ form.manual_date.errors }}{{ date }} 

Приведенные выше взгляды рендеринга на жёстко прописанные значения даты в шаблоне как переменная. Вместо жесткого кода можно указать дату из поля manual_date в моделях. И как передать его в форме отчета.

+0

Показать полный код вида и шаблона, а также. – Rohan

ответ

0

Я думаю, что вы хотите этого, вместо того, чтобы использовать жёстко даты использования report.manual_date:

if settings.date_format == '0': 
    date = report.manual_date.strftime('%d/%m/%Y') 
else: 
    date = report.manual_date.strftime('%m/%d/%Y') 
+0

В представлениях, я получаю ручную дату от пользователя и сохраняю в db, поэтому введенный формат даты должен меняться в соответствии с выбранным форматом, возможно ли это сделать. Это я просто показываю переменную даты в шаблоне, формат меняется. Я хочу, чтобы это произошло в форме, поэтому, как передать переменную даты в форме. – user2086641

+0

Любая идея, как передать переменную date в reportform. – user2086641

+0

Попробуйте передать исходные данные как 'ReportForm (initial_data = {'manual_date': date}, ....)'. – Rohan

Смежные вопросы