parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

PF: Создание web-приложения

Sumo 25.08.2007 08:02

Эта статья содержит описание моего подхода к использованию PF'а. Надо заметить, что библиотека достаточно гибкая и дает программисту большую свободу в выборе методики работы.

Для начала необходимо создать на сервере программное окружение для работы. Создадим следующую иерархию папок в "домашней" папке на веб-сервере:
|- classess
  |- pf
|- app
  |- controllers
  |- model
  |- views
  |- helpers
|- cgi-bin
|- public_html
  |- css
  |- images
В папке cgi-bin лежит Парсер с конфигурационным файлом, а в папку /classess/pf положим код библиотеки, корневой папкой вебпространства будет /public_html. В /cgi-bin/auto.p пропишем следующие строки:
$CLASS_PATH[^table::create{path
/../classess/
/../app/model/
/../app/controllers/
/../app/helpers/}]

$SQL.connect-string[mysql://test:test123@[/tmp/mysql.sock]/test?ClientCharset=Windows-1251]
В конфигурацию веб-сервера (предположим, что речь идет про Апач) добавим:
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ _ind.html?_action=$1 [QSA]
Теперь напишем основу для нашего приложения - менеджер (в терминах MVC - контролер). Создадим файл /app/controllers/appManager.p следующего содержания:
@CLASS
appManager

@USE
pf/web/pfSiteManager.p

@create[aOptions]
  ^BASE:create[$aOptions]

@onINDEX[aActionArgs]
  Наше первое веб-приложение на PF!
В файле /public_html/_ind.html напишем следующее:
@USE
appManager.p

@main[]
  $app[^siteManager::create[
         $.templateFolder[/../app/views/]
       ]]
  $result[^app.run[]]
Теперь при обращении к нашему сайту через веб-браузер мы увидим "Наше первое веб-приложение на PF!".