小编til*_*bra的帖子

Django 表单 - 对不同的选择使用不同的预定义日期范围

我有一个 Django 表单,用户可以在选择字段中选择变量,在选择日期小部件中选择开始日期和结束日期。对于不同的变量,可能的开始和结束日期有所不同。该表格有效,但所有变量仅适用于一个预定义的日期范围。如何根据变量更改可能的开始和结束日期?

\n
from django import forms\nfrom datetime import datetime \n\nParameter_CHOICES = [\n    ('', 'W\xc3\xa4hle ein Umweltvariable'),\n    ('niederschlag', 'Niederschlag [L/m\xc2\xb2]'),\n    ('bodentemperatur_5cm', 'Bodentemperatur in 5cm Tiefe [\xc2\xb0C]')\n]\n\nclass DataForm(forms.Form):\n    parameter = forms.ChoiceField(\n        widget=forms.Select,\n        choices=Parameter_CHOICES)\n    start_date = forms.DateField(label='Beginn:', widget=forms.SelectDateWidget(years=list(range(2007,2023))))\n    end_date = forms.DateField(label='Ende:', initial=datetime.now, widget=forms.SelectDateWidget(years=list(range(2007,2023))))\n
Run Code Online (Sandbox Code Playgroud)\n

我需要的是将niederschlag 的
\n \n和 bodentemperatur_5cm 设置为\nyears=list(range(2007,2023))

years=list(range(1991,2023))

\n

是否可以在 forms.py 中执行此操作,还是必须在 javascript/html 中执行此操作?

\n

更新\n我尝试用 jQuery 解决它,但我卡住了。\n我尝试使用此函数根据参数更改 Years Range choicec:

\n
$("#id_parameter").on('change', function(){\n        var parameter = $("#id_parameter").val();\n        if (parameter == 'niederschlag') {\n            $("#id_start_date_year").val(2007);\n        }\n        if …
Run Code Online (Sandbox Code Playgroud)

html javascript forms django django-forms

5
推荐指数
1
解决办法
647
查看次数

Pandas:用范围函数替换数据框中的列

我的csv文件中有一个唯一键列,它在每一行中都有值1.我想用实际唯一值(1,2,3,4,5 ......)替换它们.

我尝试:

data=pd.read_csv(csv_file)
data['Unique Key'] = data['Unique Key'].replace(1:range(1))
Run Code Online (Sandbox Code Playgroud)

但显然不起作用;(

python numpy python-3.x pandas

1
推荐指数
1
解决办法
81
查看次数

标签 统计

django ×1

django-forms ×1

forms ×1

html ×1

javascript ×1

numpy ×1

pandas ×1

python ×1

python-3.x ×1