Ruby on Rails用のカスタムブログエンジン

Ruby on Railsエコシステムには、組み込みブログエンジンといういまいましい場所があるように思えます。 数え切れないほどの数の「Rails Blog in 10 Minutes」スクリーンキャストに照らして見るのは特にうれしいです。



どうやら、プラグインの形でブログソリューションを作成しようとすると、原則として次の2つの結果のいずれかが導き出されます。初期化前のRailsアプリケーション。



しばらく前、私がABAK-PRESSで働いていたとき、経営陣は最近、非常にファッショナブルな「トリック」をかわいいLookMart.ru Webサイト 、つまりユーザーブログに追加するように命じました(この機能は現在開発中です)。 何よりも、車輪を再発明して、モデルを備えたコントローラーから明らかな車を作りたかったのですが、少し偵察した後、我慢して自分ですべてをしなければなりませんでした。 なんで?



悲しいかな、適切な解決策が見つからなかったからです。 主な制限は、問題の声明とポータルのコードベースの機能によって課されました。

世界は小さいです。 最も重要な既存のソリューションの1つは、おそらく誰かにとって役に立つでしょう。この記事は、偵察のコストを削減するのに役立ちます。



アナログの説明



知事


GovernorはRuby on Rails 3.0のプラグインで、Webアプリケーションにブログ機能をほぼシームレスに組み込むことができます。



プラグインは、RSpecを使用したテストで完全にカバーされており、ActiveRecordとwill_paginateのみの最小限のランタイム依存関係があります。 ユーザーの認証および承認方法は、対応するヘルパーをオーバーライドすることで指定されます。



前回のコミットが昨年の11月27日であり、Rails 3.1のサポートがまだ発表されていないことは少し面倒です。



機関車


Ruby on Railsエコシステムでは、 Locomotiveのような「ハーベスター」は、完全に簡単な方法( エンジンなど )でWebアプリケーションに組み込み、カスタムブログの構築に使用できますが、人気があります。



問題は、そのようなソリューションを組み込むことの適切性から生じます。これらのCMSは多くのことを行うことができます。 それらに実装された機能は、せいぜい、既存の開発を複製するだけでなく、場合によっては建築的なデザインを台無しにする可能性があります。 すべての人がこれを受け入れる準備ができているわけではありません。



これらのソリューションの人気は、プロジェクトの開発のペースとテストでのコードカバレッジの品質の両方に影響します。 LocomotiveはMongoDBのみを使用していることを忘れないでください。



クブログ


ガバナーエンジンのより現代的なアナログであるKublogもあります。



Kublogは本質的に知事に非常に似ていますが、Ruby on Rails≥3.1とキャリアウェア(ペーパークリップに似ています)というもう少し「モダン」なツールによって強化されています。



最終コミットの日付が2011年11月21日であり、コードのテストが部分的に利用可能であるという事実から判断すると、Railsのブログプラグインの数と時期との間に特定の関係があるという仮説が立てられます。



開発強度が低く、コミュニティからのプロジェクトにほとんど関心がないにもかかわらず、開発会社が生産に使用しており、おそらく非常に良い結果を示しています。



ジャベ


JABE組み込みエンジンは比較的最近登場したもので、Rails≥3.1、ActiveRecord、kaminari、devise、simple_formなど、すでに優れたCMSに匹敵する多くの依存関係をすでに持っています。



非常に印象的なバージョン0.7.0にもかかわらず、テストでのカバレッジは事実として欠落しています。これは、昨年12月以降にエンジンを成長させることができました。



要約表

アナログ 軽量 人気度 制限事項 テストカバレッジ
知事 はい 83人のウォッチャー、5つのフォーク、最終コミット、2011年11月27日 アクティブレコード いいね
機関車 いや 947人のウォッチャー、218人のフォーク、2012年9月2日の最終コミット モンゴイド いいね
クブログ はい 3人のウォッチャー、1つのフォーク、2011年1月21日の最終コミット アクティブレコード 平均的
ジャベ はい 14人のウォッチャー、3つのフォーク、2012年2月2日の最終コミット アクティブレコード いや
したがって、私は修辞的な質問をしたいと思います:元のタスクはRuby on Railsコミュニティにとって無関係なので、誰もそれを解決しようとしていないのですか?



タスクは、関連しているものの、要件を明確にしたブログエンジンの開発に常にあると思い込んでいます。そのため、一般的なレール上の(カスタム)ブログのソリューションはSisyphusの労力です。



All Articles