RailsライクなSwift製webフレームワークSwifton
Swift製でRailsライクなフレームワークが出たっぽいです。
その名もSwifton!
Swift on Railsの略のようです!
略したらRailsは消えたのかな(´・ω・`)
ということで、ちょっと触ってみました。
【公式github】
https://github.com/necolt/Swifton
インストール
手元の環境がubuntuだったのでubuntuでやります。
最新のswift(3.0-dev)がいるようなので、ソースからコンパイルします。
$ cd /usr/local/
$ wget https://swift.org/builds/development/ubuntu1510/swift-DEVELOPMENT-SNAPSHOT-2016-02-08-a/swift-DEVELOPMENT-SNAPSHOT-2016-02-08-a-ubuntu15.10.tar.gz
$ tar xvfz swift-DEVELOPMENT-SNAPSHOT-2016-02-08-a-ubuntu15.10.tar.gz
$ mv swift-DEVELOPMENT-SNAPSHOT-2016-02-08-a-ubuntu15.10 swift
$ echo 'PATH=/usr/local/swift/usr/bin:$PATH' >> ~/.bashrc
$ source ~/.bashrc
$ swift --version
Swift version 3.0-dev (LLVM a7663bb722, Clang 4ca3c7fa28, Swift 1c2f40e246)
Target: x86_64-unknown-linux-gnu
そしてインストール。
今の所ToDoアプリのサンプルをcloneしてね、みたいな手順になってるようです。この辺はまだ走り出し感がありますね。
$ git clone https://github.com/necolt/Swifton-TodoApp.git
$ cd Swifton-TodoApp
$ swift build
ディレクトリ構成
サンプルアプリ見る限りですが、こんな構成になってるみたいです。
app -- Views -- Todos -- Index.html.stencil
|- Public -- jquery_ujs.js
|- Sources -- main.swift
| |- TodoController.swift
| |- Todo.swift
| |- ApplicationController.swift
|- Packages/
|- app.json
|- README.md
|- Procfile
|- Package.swift
|- MIT-LICENSE
|- Dockerfile
Sourcesにcontrollerとかmodelとかrouterとか入ってるようですね。
テンプレートエンジンにはstencilというのを使っているようです。twigっぽい雰囲気。
起動してみる
サンプルアプリに起動してアクセスしみてます。
$ ./.build/debug/Swifton-TodoApp
[2016-02-22 01:28:39 +0000] [1623] [INFO] Listening at http://0.0.0.0:8000 (1623)
[2016-02-22 01:28:39 +0000] [1624] [INFO] Booting worker process with pid: 1624
サーバーは無事起動しました。
localhost:8000にアクセスすればいいようなので、ブラウザからアクセスしてみます。
※docker使ってたので、8889にポートフォワードしてます。
アクセスしたらrouteがないと怒られました(´・ω・`)
main.swiftにroute情報が書いてあるみたいなので見てみます
router.resources("todos", TodosController())
todosにアクセスすればよさそうです。
だいぶシンプルな感じのページですが、一応表示されました!
まだmigrationあたりとか言及されてないので、その辺までサポートしてくれるといいなぁ〜
なにはともあれ取り扱いは簡単にできそうなので、もうちょっといじってみようかな!
Author And Source
この問題について(RailsライクなSwift製webフレームワークSwifton), 我々は、より多くの情報をここで見つけました https://qiita.com/h-tko/items/dabb4f49e1a5415c6eb9著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .