ЛУЧШИЙ САЙТ ДЛЯ ВЕБ-РАЗРАБОТЧИКОВ
AppML. Уроки для начинающих

AppML Справочник


AppML HTML Атрибуты

Пример

<div appml-include-html="inc_header.html"></div>

<h1>Клиенты</h1>
<table appml-data="customers.js" appml-controller="myController">
  <tr>
    <th>Клиент</th>
    <th>Город</th>
    <th>Страна</th>
  </tr>
  <tr appml-repeat="records">
    <td>{{CustomerName}}</td>
    <td>{{City}}</td>
    <td>{{Country}}</td>
  </tr>
</table>

<div appml-include-html="inc_footer.html"></div>
Попробуйте сами »
Атрибут Описание Объяснение
appml-controller Определяет контроллер AppML AppML Контроллеры
appml-data Определяет источник данных для приложения AppML Данные
appml-include-html Определяет HTML для включения AppML Включения
appml-repeat Определяет повторяющийся элемент HTML AppML Как работает

AppML Сообщения

Пример

function myController($appml) {
    if ($appml.message == "display") {
        if ($appml.display.name == "CustomerName") {
            $appml.display.value = $appml.display.value.toUpperCase();
        }
    }
}
Попробуйте сами »
Сообщение Отправляет
ready После запуска AppML и готовности к загрузке данных
loaded После полной загрузки AppML готов к отображению данных
display Перед тем, как AppML отобразит элемент данных
done После того, как AppML завершен (отображение завершено)
submit Прежде чем AppML отправит данные
error После того, как AppML обнаружил ошибку

Сообщения AppML описаны в разделе AppML сообщения.


AppML Модели

Пример

{
"security": "admin",
"rowsperpage" : 10,

"database": {
    "connection": "mysql",
    "sql"       : "SELECT * FROM Customers",
    "orderby"   : "CustomerName"}},

"filteritems" : [
    {"item" : "CustomerName", "label" : "Customer"},
    {"item" : "City"},
    {"item" : "Country"}],

"sortitems" : [
    {"item" : "CustomerName", "label" : "Customer"},
    {"item" : "City"},
    {"item" : "Country"}]
}

AppML Свойства модели

Элемент Описание
"data" Определяет источник flat файла для модели
"database" Определяет источник базы данных для модели
"filteritems" Определяет ограничения фильтра
"rowsperpage" Определяет количество строк, которые нужно выбрать на странице
"security" Определяет безопасность для модели
"sortitems" Определяет ограничения сортировки

Безопасность приложений

Вы должны войти в систему как член группы "admin", чтобы получить доступ к этому приложению:

Пример

{
"security": "admin",
"database": {
    "connection": "mysql",
    "sql"       : "SELECT * FROM Customers",
    "orderby"   : "CustomerName"}
}

Частные модели

Вы можете добавить в модель свои личные данные.

В этом примере предлагаются ограничения на данные:

Пример

"restrictions" : {
    "fname" : {"maxlength": 40},
    "price" : {"max": 999,"min": 100}
    }

Данные модели могут использоваться серверными приложениями и вашим контроллером AppML.

В этом примере используются данные модели для проверки ввода:

Пример

function myController($appml) {
    if ($appml.message == "submit") {
        var price = document.getElementById("price").value;
        if (price < $appml.model.restrictions.price.min) {
            $appml.displayError(15, "Цена слишком низкая!");
            return;
        }
}