UPDATED 2016-02-02
आप 3. * उपयोग कर रहे हैं Symfony निम्नलिखित टहनी विन्यास इस्तेमाल किया जाना चाहिए:
# app/config/config.yml twig: # ... form_themes: - 'SonataCoreBundle:Form:datepicker.html.twig'
UPDATED 2015-05-04
कस्टम डेट पिकर का उपयोग अब और आवश्यक नहीं है। सोनाटा में मूल डेटाटाइम पिकर होता है, जो ट्विटर बूस्ट्रैप के साथ अच्छी तरह से काम करता है।
दिनांक पिकर प्रपत्र फ़ील्ड्स सक्रिय करने के लिए, आप अनुप्रयोग/config.yml में टहनी रूप संसाधनों में SonataCoreBundle:Form:datepicker.html.twig
जोड़ने के लिए:
twig:
# ...
form:
resources:
- 'SonataCoreBundle:Form:datepicker.html.twig'
आप रूप में पिकर का उपयोग कर सकते हैं:
protected function configureFormFields(FormMapper $formMapper)
{
$formMapper
->add('createdAt', 'sonata_type_date_picker');
}
datetime फिल्टर में
:
protected function configureDatagridFilters(DatagridMapper $datagridMapper)
{
$datagridMapper
->add('createdAt', 'doctrine_orm_datetime', array('field_type'=>'sonata_type_datetime_picker',));
}
या के रूप में दिनांक सीमा फिल्टर:
protected function configureDatagridFilters(DatagridMapper $datagridMapper)
{
$datagridMapper
->add('createdAt', 'doctrine_orm_datetime_range', array('field_type'=>'sonata_type_datetime_range_picker',));
}
पुराने उत्तर
इस कोड doctrine_orm_datetime
उपयोग में datepicker का उपयोग करें:
protected function configureDatagridFilters(DatagridMapper $datagridMapper)
{
$datagridMapper->add('datumUitgevoerd', 'doctrine_orm_datetime', array(), null, array('widget' => 'single_text', 'required' => false, 'attr' => array('class' => 'datepicker')));
}
या doctrine_orm_datetime_range
में datepicker उपयोग करने के लिए कोड की तरह दिखना चाहिए:
protected function configureDatagridFilters(DatagridMapper $datagridMapper)
{
$datagridMapper->add('datumUitgevoerd', 'doctrine_orm_datetime_range', array(), null, array('widget' => 'single_text', 'required' => false, 'attr' => array('class' => 'datepicker')));
}
और तुम DatePic प्रारंभ करने के लिए अपनी कस्टम जावास्क्रिप्ट फ़ाइल जोड़ने के लिए मुख्य टेम्पलेट को अधिभारित करना चाहिए केर।
#File app/config.yml
sonata_admin:
title: Admin
title_logo: /logo_admin.png
templates:
layout: AcmeDemoBundle::standard_layout.html.twig
#...another Sonata and Symfony settings...
{# File src/Acme/Bundle/DemoBundle/Resources/views/standard_layout.html.twig #}
{% extends 'SonataAdminBundle::standard_layout.html.twig' %}
{% block javascripts %}
{{ parent() }}
<script src="{{ asset('bundles/acmedemo/js/jquery_admin.js') }}" type="text/javascript"></script>
{% endblock %}
//File web\bundles\acmedemo\js\jquery_admin.js
jQuery(document).ready(function(){
jQuery.datepicker.setDefaults(jQuery.datepicker.regional[ "" ]);
jQuery(".datepicker").datepicker(jQuery.datepicker.regional[ "en" ]);
});
मैंने आपके निर्देशों का पालन किया, और यह तब तक काम करता है जब तक कि मैं "फ़िल्टर" बटन दबाता हूं। मुझे दिनांक फ़ील्ड के लिए एक सत्यापन त्रुटि मिलती है "यह मान मान्य नहीं है।" एक बात जो मैं वर्तमान में अलग कर रहा हूं वह है कि मैं 'इनपुट_ टाइप' => 'टाइमस्टैम्प' का उपयोग कर रहा हूं, इसके अलावा, वही है। डिफ़ॉल्ट date_range विजेट मेरे लिए बस ठीक काम करता है। कोई विचार क्यों? – Onema
मेरी समस्या की कुंजी सही प्रारूप सेट करना था: '' प्रारूप '=>' एम/डी/वाई ' – Onema
धन्यवाद! समाधान पूरी तरह से काम करता है। – carzogliore