Так как документации еще нет, возникает много вопросов. Предлагаю в этой теме задавать вопросы по model.php, а также отвечать на вопросы по мере возможности.
Буду первым. Как очистить таблицу в бд от записей? Метода truncate ($table_name) не нашел :(
Возможно, он и не нужен, тогда другой вопрос. Каким методом фильтрации выбрать все строки в таблице, чтобы потом удалить с помощью deleteFiltered.
Что мешает использовать в моделиКак очистить таблицу в бд от записей?
$this->db->query('TRUNCATE TABLE `table_name`');
Так сработало
Что мешает использовать в моделиКак очистить таблицу в бд от записей?
$this->db->query('TRUNCATE TABLE `table_name`');
$this->db->query('TRUNCATE TABLE `cms_table_name`');
Что мешает использовать в модели
$this->db->query('TRUNCATE TABLE `table_name`');
Fuze, дорогой!
Ну неужели не жалко времени – в подобных форумах обсуждать все эти бесконечно малые, но в то же время фундаментальные вопросы?
Вот здесь: instantcms.ru/forum/thread19516.html как раз призываю тех, кто в теме по макушку, доделать систематический мануал для разработчиков (который уже блестяще начат) и добавить к нему сводные списки (таблицы) всех стандартных методов, свойств, констант и переменных.
Уверен, что лучше время и силы сконцентрировать на этом фундаменте!
«...
Не забыл, и слава Богу, нанести орнамент.
Что ж забыл? Забыл немного – заложить фундамент!
...»
© Михаил Щербаков
Написать 40 букв мне не жалко.Ну неужели не жалко времени – в подобных форумах обсуждать все эти бесконечно малые, но в то же время фундаментальные вопросы?
Т.е. вы предлагаете переписать все комментарии к методам из кода в мануал?сводные списки (таблицы) всех стандартных методов, свойств, констант и переменных.
Воистину – ответ математикаТ.е. вы предлагаете переписать все комментарии к методам из кода в мануал?сводные списки (таблицы) всех стандартных методов, свойств, констант и переменных.
Но, надеюсь, это была шутка юмора, потому что разница немалая между комментариями к методам и сводной справочной таблицей. Я уже не говорю о том, что в коде все эти сущности разбросаны по десяткам файлов и разбавлены тысячами строк, от которых как раз и надо бы абстрагироваться разработчику – для чего, кстати, вся эта иерархия классов и создавалась.
Разумеется, держа всю эту структуру у себя в голове, искренне не понимаешь: чего этим придуркам не хватает, всё же так здорово написано?!
А не хватает некоего интерфейса, который позволит кратко и эффективно, во-первых, обозревать все эти богатства человеку, пока не въехавшему глубоко (все, на первых порах, сталкиваются с такой необходимостью), а во-вторых, видеть, как на очень наглядных примерах это работает – что мне очень нравится в той части мануала, который уже сделан. Я никогда не буду делать сайт-магазин, но магазинная аналогия абсолютно понятна даже такому дураку, как я!
А если серьёзно: спасибо за то, что уже сделано! Мне кажется, вы действительно можете получить гораздо больше разработчиков (а в конечном счёте, и славы, и денег), если снизите планку входа в свой объектный лего-конструктор…
в статье на хабре описывается два способа создания диаграммы классов по существующему коду.
Эти диаграммы классов стали бы нужной частью документации.
Пытался самостоятельно составить подобные диаграммы но не хватает времени разобраться.
«...Aquarius, все будет со временем, нужно просто набраться терпения. Останутся самые стойкие)
Жаль только – жить в эту пору прекрасную
Уж не придётся – ни мне, ни тебе.»
© Некрасов
Fuze, вот столкнулся именно с тем, о чём мы дискутировали: из видео-туториала очевидно, что я могу использовать в формах стандартное поле "дата"Т.е. вы предлагаете переписать все комментарии к методам из кода в мануал?сводные списки (таблицы) всех стандартных методов, свойств, констант и переменных.
Но попытка то же самое проделать с полем "время" ни к чему не привела.
Я пробовал варианты типа "fieldTime(..." в нескольких вариациях...
То ли такой возможности нет, то ли я просто туплю – как об этом узнать без документации, без сводной таблицы?
Потерял уже прорву времени на поиски по исходникам – подсказки там, увы, тоже не нашёл...
Может посоветуете? Хотя бы место кода про "fieldDate", где, по аналогии, можно было бы описать и "fieldTime"...
Заранее спасибо!
Все классы полей лежат в /system/fieldsкак об этом узнать без документации, без сводной таблицы?
Возможно вам подойдет fieldAge. Или же написать свой класс поля по аналогии с существующими.Хотя бы место кода про "fieldDate", где, по аналогии, можно было бы описать и "fieldTime"
Поставьте нормальную IDE с автодополнением, чтобы когда вы ввели "new field" вам она показывала все доступные классы начинающиеся на fieldЯ пробовал варианты типа "fieldTime(..." в нескольких вариациях...
То ли такой возможности нет, то ли я просто туплю – как об этом узнать без документации, без сводной таблицы?
Опять же, в любой нормальной IDE вы бы могли сделать Ctrl+клик по слову fieldDate и перейти к определению этого класса, тут же поняв где он находится и какие в этой же папке есть аналогичные классыПотерял уже прорву времени на поиски по исходникам – подсказки там, увы, тоже не нашёл...
IDE множество: NetBeans, phpStorm, PhpED, Eclipse и куча других.
Notepad++ и подобное при серьезной разработке годится только чтобы по-быстрому поправить пару строчек в точно известном месте.
Хорошая IDE с хорошим автокомплитом избавит вас от огромного множества непоняток и вопросов
public function getOptions(){ 'title' => LANG_PARSER_DATE_SHOW_TIME, 'default' => false ... public function store($value, $is_submitted, $old_value=null){ if ($value){ $value = "{$value['date']} {$value['hour']}:{$value['min']}"; ...
Но есть ещё один путь, на случай, если штатный класс даты всё же не умеет принимать от пользователя время: можно ввести два fieldNumber (для часов и минут, соответственно). Останется лишь разобраться – как поправить шаблон, который сейчас все поля рисует друг под другом?
Спасибо за советы!
Но попытка то же самое проделать с полем "время" ни к чему не привела. Я пробовал варианты типа "fieldTime(..." в нескольких вариациях...
ВЫ видимо желаете дополнить поле Дата полем выбора часового времени — или создать отдельное поле " время."
Это решение заложено в поле fieldAge — при условии что Вы укажете в конфигурационных настройках
Формат вывода даты d.m.Y.h.m
Поле Age выводит ( при редактировании ) сохраненную ( в базе данных дату в формате d.m.Y.h.m) На момент создания-выбора даты поля date :Год-месяц-число-день-час-минуты.
Но!
Возможность выбора времени, при редактировании форм, должна поддерживаться еще и разработчиком jQuery ui datepicker.
Поменяйте в форме, или создайте поле типа fieldAge,
Видите что есть только выбор даты, и нет выбора установки времени.
В настройках конфигурации есть пункт Установка формата js.
Именно этот формат будет отдаваться значению поля при вызове jQuery ui datepicker.
Но в документации к datepicker.formatDate( format, date, settings ) нет формата часы-минуты.
Виджет jQuery ui datepicker принимает формат
$('#LastActivity').datepicker({showStatus: true, showOn: 'both', dateFormat:'dd.mm.yy'});
Для выбора "времени" после выбора "даты" используют различные аддоны типаAdding a Timepicker to jQuery UI Datepicker
на странице по ссылке " Download Timepicker Addon "
1-Fuze, r2, я обнаружил в классе fieldDate две функции, где речь идёт о времени, но не очень понятно – можно ли этим воспользоваться?
public function getOptions(){ 'title' => LANG_PARSER_DATE_SHOW_TIME, 'default' => false )), ); }
тоесть show_time 'default' => false — не показывать время! Или show_time 'default' => true — показывать время!
Тоесть при создании любого контента в таблицу будет записана дата в формате d.m.Y.h.m
А флаг " show_time " обрабатывается только при показе контента в шаблоне templates/*/assets/fields/date.tpl.php