10650


現在、新しいウェブサイトを作成しようとしています。

とくにデータベースを利用してユーザデータを保存するようなサービスではないので普通にHTML,CSS,JSとPHP等を利用して作っても良いと思っているのですが、sassやテンプレートエンジンも利用したいとおもっています。

Railsを利用すると、様々なライブラリを気軽に導入できたり、テンプレートエンジンやsassが標準搭載していたり、いろいろメリットが有ると思われたのでrailsで良いのではないか？と思ったのですが、データベースを利用するサービスの開発を行うわけでもないので少し大袈裟な気もしました。

こういった場合、一般的にどのように実装されているのかわからなかったので調査してみたところ、

[code]

    rails new Hoge -O
    
[/code]

でプロジェクトを作成するという方法や`ActiveAttr`というgemを利用する方法が出てきたのですが、「俺だったらこうするかな」というようなrails熟練者の方の意見とその注意点が欲しくて質問させていただきました。

Rails4でデータベースを利用しないプロジェクトの作成方法のベストプラクティスとその注意点を教えて下さい。


CC BY-SA 3.0
2015-05-21T01:48:19.377
10442
2015-05-27T00:25:40.647
2015-05-21T03:25:05.920
5840
5840
question
ruby-on-rails
Rails4でデータベースを利用しないプロジェクトの作成方法と注意点


自分がデータベースを利用せずとも裏で別システムとAPIで通信する場合などが普通にありますので大袈裟かという点は、あまり心配なさらずに。

ただ単にsassやテンプレートエンジンを使いたいだけならActiveAttrすら不要かもしれません。  
もし本当に、sassやテンプレートエンジンだけの利用であれば。コンパイル結果や出力結果だけ配置するという手もあります。（私はペンギン病ならぬhaml病なので。静的HTMLしかない個人的な趣味のサイトですらhamlファイルをコンパイルしてデプロイしてしまったこともあります）

こればかりは、何が作りたいかによるので決まった話ができません。  
（おそらく完全に静的というのも考えにくいので）


CC BY-SA 3.0
2015-05-25T08:30:15.223
10588
2015-05-25T08:30:15.223
8335
10442
answer


本当にデータベース等を使った動的処理をせず、RESTfulなURIルーティングやMVC的な作りで楽したいということでもなければ、特にrailsに拘る必要はないと思います。が、断言するにはやや微妙ですね。

[middleman](https://middlemanapp.com/jp/)というrubyベースのツールもあります。これはsass,compass,アセットパイプラインもcoffeescriptも標準で使えたと記憶してます。scaffold的な機能もあったはず。


CC BY-SA 3.0
2015-05-26T09:23:39.710
10640
2015-05-26T09:23:39.710
9403
10442
answer


もしかしたら、@Junichi
Itoさんの「妻のパン屋」関連のブログ記事が参考になるかもしれません。開発やデプロイ上の注意点と奥様への愛情にあふれた力作の記事だと思います。  
ソースコードも公開されているので、ちらちら見ましたら、ブログの情報と更新情報だけデータベースを使っているようですが、ほとんど静的なサイトです。

[「Coupe
Baguette」のWebサイトができあがるまで](http://blog.jnito.com/entry/20120101/1325368009)  
[妻のパン屋のWebサイトのソースコードと、サイトで活用したRails/Heroku関連の技術的なトピック](http://blog.jnito.com/entry/2013/01/21/075055)  
[妻のパン屋のwebサイトをいろいろ更新した話 ～Rails
4アップデートとかサイトの高速化とか～](http://blog.jnito.com/entry/2014/05/04/090537)

技術的には、このサイトでは、トップレベルのメニューごとにコントローラーを作って、showアクションで表示させているようです。  
このあたりは、作りたいサイトの構成と将来的にどの方向に拡張が考えられるのか、更新される情報はあるのか、それを管理するのは、技術者なのか、そうでないのか、などによって構成が変わるかと思います。  
例えば、上のサイトでは、サイトのトップレベルのメニューが増えた場合はコントローラーを新しく作って対応することが想定されていると思います。ただ、この構成でサブメニューがたくさん増えていくとコードとコンテンツがこんがらがって、Railsを使っている意味があまりなくなってしまうかもしれません。  
また、おそらく更新情報だけは技術者でない奥様が更新されることを想定して、adminページから更新ができるようになっているのではないかと思います。


CC BY-SA 3.0
2015-05-27T00:25:40.647
10650
2015-05-27T00:25:40.647
199
10442
answer