我有一个小问题我正在使用Sonata开展一个小项目,但我想弄清楚如何定制一个人可以选择日期的日期范围,例如从2000年1月1日到2020年12月31日。可能有人告诉我在Sonata文档中哪里可以找到它或告诉我如何操作?因为我有一点看,我没有什么可以完全自定义日期的选择。
提前致谢
编辑:
在symfony文档中我发现了这个
'days' => range(1,31)
此处:http://symfony.com/doc/current/reference/forms/types/date.html
但我在奏鸣曲文档中找不到任何内容。而不是在Symfony上工作:/
答案 0 :(得分:3)
我假设您在Sonata中使用 sonata_type_date_picker 字段。文档为here。那么你的案例可以这样实现:
import re
import sys
import time
import datetime
import pyautogui
import os
import subprocess
import random
import math
from selenium import webdriver
from selenium.webdriver.firefox.firefox_profile import FirefoxProfile
from selenium.webdriver.firefox.firefox_binary import FirefoxBinary
binary = FirefoxBinary(r'D:\Desktop\Tor\Tor Browser\Browser\firefox.exe')
profile = FirefoxProfile(r'D:\Desktop\Tor\Tor\Browser\Browser\TorBrowser\Data\Browser\profile.default')
driver = webdriver.Firefox(profile, binary)
driver.get("google.com")
或者你可以让日期选择器有3个下拉菜单 - 它是标准的Symfony 日期字段,适用于SonataAdmin:
->add('userDate', 'sonata_type_date_picker', [
'dp_min_date' => 'Jan 1, 2000', //todo: date format here depends on your setup. Basicly it's the same format, you see in text field after you selected data in datepicker.
'dp_max_date' => 'Dec 31, 2020',
]);
我还建议使用相同的规则(在实体中)添加后端验证:
->add('userDate', 'date', [
'years' => range(2000, 2020),
]);