ASPフレームワーク ぴいたん

ASPフレームワーク ぴいたん

ぴいたんとは世界最軽量のレガシーASP用MVCフレームワークです。

ASPフレームワーク ぴいたん最近は、PHPで開発することが多かったのですが、たまに昔のASP(レガシーASP)のシステムをさわらないといけない時があります。 しかし、レガシーASPの時代には、MVCフレームワークが広まっておらず、これといったフレームワークはありませんでした。

このギャップをなんとかしたいと思い、PHPのフレームワークをASPに移植することを考えました。 しかし、どのフレームワークも高機能なのですが、移植するにはアーキテクチャーが複雑でした。 でも神様は見放しませんでした。

ちいたん」という素晴らしいフレームワークが世の中にはあったのです。

ちいたん」は、CakePHPを意識して開発された最軽量のPHPフレームワークです。 この「ちいたん」をレガシーASPに移植することができました。 (レガシーASPでオブジェクト指向っぽく作るのにかなり苦労しましたが・・・)

名前を「ぴいたん」と呼びます。 (たまごのピータンではありませんよ)

ライセンスはMITです。


新着情報

バージョン 0.7.2公開。

  • AccessのDBに対応。
  • モデルクラスでconnNameを指定しなくても動くようにしました。
  • テーブル名はクラス名を小文字にしたものを使うようにしました。
  • config.aspのメソッドが宣言していなくても動作するようにしました。

ダウンロードページからダウンロードできます。


ぴいたん(ASPフレームワーク)の特徴

最小ソースコードはこれだけです。

ソースコードはこれだけでも動きます。

  • 1ファイルの場合
<!--#include file="../peetan/peetan.asp"-->
<%
Function action(ByRef c)
  c.setv "msg", "Hello, World!"
End Function
%>
<html>
<body>
<h1><%=data("msg")%></h1>
</body>
</html>
  • テンプレート使用の場合
----hello.asp----
<!--#include file="../peetan/peetan.asp"-->
<%
Function action(ByRef c)
  c.setv "msg", "Hello, World!"
End Function
%>


----hello.html----
<html>
<body>
<h1><%=data("msg")%></h1>
</body>
</html>


テンプレートも使えます。

全てのページで同じテンプレートを使いたい時

----temp.html----
<html>
<body>
<%=view.content%>
</body>
</html>


----hello.asp----
<!--#include file="../peetan/peetan.asp"-->
<%
Function action(ByRef c)
  c.template = "temp.html"
  c.setv "msg", "Hello, World!"
End Function
%>


----hello.html----
<h1><%=data("msg")%></h1>


モデルも完備。

データベースへの保存もこれだけ。

----config.asp----
<%
Sub config_database(ByRef db)
  db.add "default", "dsn=db;uid=user;pwd=pass;", DB_TYPE_MYSQL
End Sub

Sub config_models(ByRef c)
  c.AddModel "user.asp", "User", "user", null, null
End Sub
%>


----user.asp----
Class User
  Public parent
  Public Sub Class_Initialize()
    Set Me.parent = New Model
    With Me.parent
      .SetChild Me
    End With
  End Sub
End Class


----test.asp----
<!--#include file="./config.asp"-->
<!--#include file="../peetan/peetan.asp"-->
<%
Function action(ByRef c)
  If c.post.Count > 0 Then
    c.m("user").insert(c.data("user"))
  End If
End Function
%>
<html>
<body>
<form method="post" action="test.asp">
名前<br>
<input type="text" name="user/name"><br>
メールアドレス<br>
<input type="text" name="user/email">
</form>
</body>
</html>
start.txt · 最終更新: 2007/11/02 23:25 by opaken
chimeric.de = chi`s home Creative Commons License Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0