Инструменты пользователя

Инструменты сайта


eaze:pages.xml

Это старая версия документа.


pages.xml

В pages.xml описываются правила для обработки url. Правило представляет собой регулярное выражение для url, описание выполняемых действий (actions) и вывод шаблон (template).

Правила выполняются последовательно. Если первым идет правило с регулярным выражением “(.*)”, а вторым – “/”, то второе правило никогда не выполнится, так как его перекрывает первое.

Для удобства правила можно определять в группы. А в группах определять глобальные действия до (атрибут boot) и после (атрибут shutdown) обработки url по найденному правилу.

Описание файла

<sites>
    <!-- Site Pages
        name: site name, required
    -->
    <site name="">
        <!-- Pages Mapping -->
        <pages>
            <!-- Page Group. 
                You can combine pages into pageGroups
                name: pagegroup name, default is empty
                boot: following actions (comma separated) will be loaded before actions list, default is empty
                shutdown: following actions (comma separated) will be loaded after actions list, default is empty
            -->
            <pageGroup boot="" shutdown="">
                <!-- Page Settings
                    @uri: regexp url, required
                    @boot: overrided parameter from pageGroup
                    @shutdown: overrided parameter from pageGroup 
                -->
                <page uri="" boot="" shutdown="">
                    <!-- Comma separated actions list -->
                    <actions></actions>
                    <!-- Template virtual path -->
                    <template></template>
                </page>    
            </pageGroup>
 
            <!-- Page Settings
                @uri: regexp url, required
                @boot: overrided parameter from pageGroup
                @shutdown: overrided parameter from pageGroup 
            -->
            <page uri="" boot="" shutdown="">
                <!-- Comma separated actions list -->
                <actions></actions>
                <!-- Template virtual path -->
                <template></template>
            </page>    
        </pages>
 
        <!-- Optional hosts config -->
        <hosts>    
            <host name="whoopass">
                <!-- Virtual Actions -->
                <virtualActions>
                    <!-- Virtual Action
                        @name: current action name
                        value: new action name
                    -->
                    <action name="5uglov.Users.CheckLogin">5uglov.Users.CheckLogin_Sergeyfast</action>
                </virtualActions>
            </host>
        </hosts>
    </site>
</sites>

Виртуальные экшены и цепочки вызовов

Появилась поддержка цепочек вызовов экшенов (можно переопределять для разных хостов — это слегка модифицированные virtualActions).

Пример конфига

<sites>
    <site name="Project">
        <hosts>
            <host name="*">
                <action name="Chains.GetCommonBlocks">Project.Site.GetLastNews, Project.Site.GetRandPerson, Project.Site.ProcessDelayedItems</action>
            </host>
        </hosts>
        <pages>
            <page uri="/" boot="Chains.GetCommonBlocks, Project.Site.Test">
        </pages>
    </site>
</sites> 
eaze/pages.xml.1319030779.txt.gz · Последние изменения: 2011/10/19 17:26 — zenden