Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.
Порівняння попередніх версій Попередня ревізія Наступна ревізія | Попередня ревізія | ||
nyanorm [2023/06/16 13:31] nightfly [О исключениях] |
nyanorm [2023/06/16 13:46] (поточний) nightfly [Що ще?] |
||
---|---|---|---|
Рядок 231: | Рядок 231: | ||
* **MEOW_NO_FIELD_NAME** - не встановлено обов' | * **MEOW_NO_FIELD_NAME** - не встановлено обов' | ||
- | ===== Принципиальная схема ===== | + | ===== Принципова схема ===== |
- | Это где-то вот | + | |
+ | Це десь ось настільки високорівнева штука. | ||
{{: | {{: | ||
- | Так что да, в модулях где скорость работы с данными может быть узким местом, | ||
- | ===== Что еще? ===== | + | Тож так, у модулях, |
- | Короче вот пока что вам практические | + | ===== Що ще? ===== |
+ | |||
+ | Коротше ось поки що вам практичні приклади використання цього | ||
+ | |||
+ | |||
+ | Працювати наш TODO-list буде на наступній табличці в БД: | ||
- | Работать наш TODO-list будет на следующей табличке в БД: | ||
<code sql> | <code sql> | ||
CREATE TABLE IF NOT EXISTS `todo` ( | CREATE TABLE IF NOT EXISTS `todo` ( | ||
Рядок 250: | Рядок 254: | ||
</ | </ | ||
- | А вот и весь код нашего модуля: | + | А ось і весь код нашого модуля: |
<code php> | <code php> | ||
- | $todo = new nya_todo(); // Создаем модель данных при | + | $todo = new nya_todo(); //Створюємо модель даних за допомогою |
- | //Собственно | + | //Власне todo після префікса nya_ це і є наша табличка. |
- | $moduleBaseUrl = '? | + | $moduleBaseUrl = '? |
- | $messages = new UbillingMessageHelper(); | + | $messages = new UbillingMessageHelper(); |
$result = ''; | $result = ''; | ||
- | // | + | // |
$inputs = wf_TextInput(' | $inputs = wf_TextInput(' | ||
$inputs .= wf_Submit(__(' | $inputs .= wf_Submit(__(' | ||
Рядок 266: | Рядок 270: | ||
show_window(__(' | show_window(__(' | ||
- | // | + | // |
if (ubRouting:: | if (ubRouting:: | ||
- | //заполняем новыми данными структуру data предварительно отфильтровав их средствами ubRouting | + | //заповнюємо новими даними структуру data, попередньо відфільтрувавши їх засобами ubRouting |
$todo-> | $todo-> | ||
- | $todo-> | + | $todo-> |
- | ubRouting:: | + | ubRouting:: |
} | } | ||
- | // | + | // |
if (ubRouting:: | if (ubRouting:: | ||
- | //выставляем параметр where в удаляемую id, предварительно убедившись, | + | //виставляємо параметр where у id, котра видаляється, попередньо переконавшись, |
$todo-> | $todo-> | ||
- | $todo-> | + | $todo-> |
ubRouting:: | ubRouting:: | ||
} | } | ||
- | // | + | // |
if (ubRouting:: | if (ubRouting:: | ||
- | //Дальше ведь все очевидно, | + | //Далі ж усе очевидно, |
$todo-> | $todo-> | ||
$todo-> | $todo-> | ||
Рядок 291: | Рядок 295: | ||
} | } | ||
- | // | + | // |
- | $todo-> | + | $todo-> |
- | $allTodos = $todo-> | + | $allTodos = $todo-> |
if (!empty($allTodos)) { | if (!empty($allTodos)) { | ||
Рядок 302: | Рядок 306: | ||
$cells = wf_TableCell($each[' | $cells = wf_TableCell($each[' | ||
$actControls = wf_JSAlert($moduleBaseUrl . '& | $actControls = wf_JSAlert($moduleBaseUrl . '& | ||
- | // | + | // |
$editInputs = wf_HiddenInput(' | $editInputs = wf_HiddenInput(' | ||
$editInputs .= wf_TextInput(' | $editInputs .= wf_TextInput(' | ||
Рядок 308: | Рядок 312: | ||
$editForm = wf_Form('', | $editForm = wf_Form('', | ||
$actControls .= wf_modalAuto(web_edit_icon(), | $actControls .= wf_modalAuto(web_edit_icon(), | ||
- | //Фу так | + | //Фу так |
$cells .= wf_TableCell($actControls); | $cells .= wf_TableCell($actControls); | ||
$rows .= wf_TableRow($cells, | $rows .= wf_TableRow($cells, |