Joomla выводим на форму поле с датой, а потом сохраняем его в БД

24.01.2016

Добавить поле с типом "Дата" на форму не проблема, как и задать вывод в "русском формате". Осложнением может стать сохранение такой даты в БД.

Вывод на форме: в xml файл формы вставляем:

XML.xml (Download)

 <?xml version="1.0" encoding="utf-8"?>
<form
    addrulepath="/administrator/components/com_soprojects/models/rules"
>
    <fieldset name="details">


        <field
            name="date"
            type="calendar"
            label="Дата"
            default="NOW"
            format="%d.%m.%Y"
        >
        </field>
  

    </fieldset>


</form>

А для нормального сохранения, в модель нужно добавить:

MODEL.php (Download)

 <?php
  // Запрет прямого доступа.
  defined('_JEXEC') or die;
  
  /**
   * Модель SoProjects Items.
   */
  class SoProjectsModelItem extends JModelAdmin
  {

	/**
	 * Prepare and sanitise the table prior to saving.
	 *
	 * @param   JTable  $table  A JTable object.
	 *
	 * @return  void
	 *
	 * @since   1.6
	 */
	protected function prepareTable($table)
	{
      $date = JFactory::getDate($table->date);
      $table->date	= $date->toSql();
	}


  }


Категории: CMS Joomla 3.X, Joomla
Пометки: Поле для админки. Тип: Дата
Яндекс.Метрика