Quictyは、PHPでWebアプリケーションを敏速に構築するためのフレームワーク。Apache + PHP + SQLite2の環境で動作する。
また、PostgreSQLとMySQLにも対応している(MySQLはまだ実験的実装)。
開発の短縮
Quictyで書かれた「Qtビルダー」というアプリ構築ツールが付属し、これをローカル環境のWebブラウザで動作させることで、Webアプリケーションの基礎構造をGUIで作成、編集できる。基本的なPHPのプログラムコードは自動的に生成され、これを修正、加筆していくことでWebアプリケーションを仕上げていく。初心者でも確実に動作するアプリケーションを作成でき、中級者以上は作業量の軽減できる。
さらに、Quictyの中核はPHPのポピュラーなテンプレートエンジン「Smarty」とPEARのクラスライブラリで構成されている。SmartyとPEARの知識があれば、学習コストも削減できる。
運用環境を選ばない
Quicty / Qtビルダーで構築したWebアプリケーションは、PEARライブラリとQucityライブラリがあれば、LinuxやFreeBSDのサーバ上で運用できる。
インストール
今回は、シンプルなオンライン・ブックマークの作成を通して、Qtビルダーの操作の基本を紹介する。
QuictyによるWebアプリケーション構築の基本手順を紹介する。
Quictyのインストールについては、以下を参照。
MacでWeb開発-(10) XAMPPにQuictyフレームワークを設置
Quictyアプリケーションの基本動作
Quictyアプリケーションの動作は非常にシンプルだ。
Webブラウザからのリクエストを「ページクラス・モジュール」が受け取り、下記の処理を行う。
- Webブラウザからページ表示リクエストを受け取る
- データセットを介してDBテーブルからデータを読み書き
- HTMLテンプレートを読み込み
- データとHTMLテンプレートを合成して表示
「データセット」には、DBテーブルの各カラムと表示するHTMLの各フォームの対応が定義されている。
Quictyアプリでは、表示するページが増えるにしたがい、
- ページクラス・モジュール
- データセット
- HTMLテンプレート
のセットを増やしていく。
もちろん、1つのページクラスから、複数のデータセットを操作することもできる。
Quictyアプリケーションの作成手順
QuictyによるWebアプリケーションの作成は、以下の手順で行う。
- アプリケーションの追加
- データセットの追加、フィールドの追加
- ページ(クラスモジュールとHTMLテンプレート)の追加
- クラスモジュール(PHPコード)の修正
- HTMLテンプレート(HTML+Smartyコード)の修正
表示するページが増えるにしたがい、2から5の手順を繰り返す。
ページとデータセットが1対1で対応する場合は、ページでデータセットを同時に作成し、のちに必要なフィールドをデータセットに追加することで手間を省ける。
はじめてのQuictyアプリケーション
はじめてのQuictyアプリとして、非常にシンプルなオンライン・ブックマークを作成する。
以下のような機能を実現する
- WebページのタイトルとURLを登録
- 一覧表示と検索
- 更新と削除
今回作成するアプリケーションの仕様は以下の通り。
アプリケーション名 | mybookmark |
タイトル | Myブックマーク |
使用データベース | SQLite |
(1) Qtビルダーを開く
Webブラウザで「http://quicty.local/qtbuilder/」にアクセス。
Qtビルダーが開いたら「アプリケーションの追加」をクリック。
(2) アプリケーションの追加
サイト名:「Myブックマーク」
Name:「mybookmark」
を入力し、「登録」をクリック。
Qtビルダーのトップページ(アプリケーションの一覧)が表示される。
作成した「myboolmark」を選んでクリック。
(3) データセットとフィールドの追加
アプリケーション「mybookmark」のページが開く。
「データセットの追加」をクリック。
データセット作成画面が開く。
タイトル:「ブックマーク」
DataSet Name:「boomark」
と入力。「登録」ボタンをクリック。
データセット「bookmark」のページが開く。
「フィールドの追加」をクリック。
フィールドの追加画面。
「text」を選択し、「追加」をクリック。
フィールドの詳細設定画面。
タイトル:「サイト名」
Name:「name」
と修正し、「登録」をクリック。
ふたたび、データセット「bookmark」のトップページ。
サイト名(name)のフィールドが追加されているのが確認できる。
再度「フィールドの追加」をクリック。
ふたたびフィールドの追加画面。
今度は「url」を選択し、「追加」をクリック。
タイトル:「URL」
Name:「url」
とし、「登録」ボタンをクリック。
データセット「bookmark」のページ。
「サイト名」と「URL」の2つのフィールドが作成されているのが確認できる。
画面を下までスクロールする。
「テーブル関連設定ファイルの保存」のすべてのチェックボックスがチェックされているのを確認し、「保存」をクリック。
ファイル保存結果が表示される。
「戻る」をクリック。
データセット「bookmark」のトップページ。
再度画面を下までスクロールする。
「テーブルの作成」の「(再)作成」のラジオボタンを選択し、「保存」をクリック。
テーブル作成結果が表示される。
「戻る」をクリック。
データセット「bookmark」のトップページ。
「アプリ」をクリック。
(4) ページの追加
アプリケーション「Myブックマーク」の画面。
「ページツリー」の中の「トップページに機能を追加」をクリック。
ページの追加画面
タイトル:「ブックマーク」
Name:「bookmark」
ページの種類:「マスタメンテ/シングルページ」
データセット:「bookmark」
と入力&選択して、「登録」をクリック。
アプリケーション「Myブックマーク」のページ。
「ページツリー」の「top_page」に「(bookmark)」が作成されている。
アプリケーションの作成作業は、以上で完了。
Name「mybookmark」のリンクをクリックすると、作成したアプリケーション「Myブックマーク」が開く。
「QT」フォルダ以下に「mybookmark」アプリの各種フォルダが生成されているのがわかる。
(5) アプリケーション「Myブックマーク」の動作確認。
作成したアプリケーション「Myブックマーク」のトップページ。
サイト名:「Tokyo O Life」
URL:「http://www.zubapita.jp/」
と入力して、「登録」をクリック。
ブックマークが登録されたのが、確認できる。
続けてデータを入力する。
「映画を語ろう」のURL(http://cine-gourmet.jp/)をクリックしてみる。
新しいウィンドウが開いて、「映画を語ろう」が表示される。
「映画を語ろう」のNo:「2」をクリックすると、ページ下部のフォームに登録情報が表示される。
「編集」をクリック。
ページ下部のフォームに登録データが読み込まれ、修正が可能になる。
サイト名を「映画を語ろう2.0β」に修正して、「更新」をクリック。
No.2のサイト名が「映画を語ろう2.0β」に修正された。
次に、検索窓に「映画」と入力し、「検索」をクリック。
(右カラムのグローバル検索窓は、このままでは動作しません)
ブックマークの一覧表示が「映画を語ろう」に絞り込まれた。
「リセット」をクリックすれば、表示が元に戻る。
Qtビルダーによって、
- データの登録
- データの一覧
- データの修正、削除
- データの検索
といったWebアプリケーションの基本的なデータ操作を、PHPのプログラミングなしに実装できた。
今回は、1画面ですべての操作を行ったが、一覧表示と編集フォームを別画面にすることも、もちろんできる。テーブルのJOINした結果を表示することも可能だ。
次回は、今回作成したオンライン・ブックマークで生成されたコードの中身を見てみよう。
以上。
関連記事
- MacでWeb開発-(1) XAMPP for Macの環境設置
- MacでWeb開発-(2) XAMPP for MacにPostgreSQLを追加
- MacでWeb開発-(3) XAMPP for MacのPHPの環境設定
- MacでWeb開発-(4) XAMPP for MacのApacheの設定確認
- MacでWeb開発-(5) XAMPP for Macの管理画面へのアクセス制限
- MacでWeb開発-(6) XAMPP for MacでWebサイトを運営(VirtualHost)
- MacでWeb開発-(7) XAMPP for Macでブログを運営(WordPress)
- MacでWeb開発-(8) XAMPP for MacでWikiを運営(PukiWiki)
- MacでWeb開発-(9) XAMPP for MacでSNSを運営(OpenPNE)
- MacでWeb開発-(10) XAMPPにQuictyフレームワークを設置
- Macを買ったら入れるソフト- (5) UNIX環境編
- MacPortsの使い方