Ruby on Rails で作成しているブログに「いいね」機能を追加して、人々が投稿を「いいね」できるようにしたいと考えています。次に、サイドバーに最も気に入った投稿を表示できるようにしたいと思います。私はレールに慣れていないので、チュートリアルとスタックオーバーフローに大きく依存しています。良いリソース、またはこれが何と呼ばれているか。この質問には「投票」を想定しました。
4 に答える
link_to_remote を調べて、レールで AJAX を使用する必要があります。始めるための素晴らしいチュートリアルは次のとおりです。http://railsonedge.blogspot.com/2008/03/tutorial-beginning-ajax-with-rails-20.html
アイデアは次のようになります。
ユーザーは「投票」をクリックします
コントローラーに非同期メッセージを送信して、投票を保存します。(使用
link_to_remote
):complete コールバックは何かを行います (例: 「投票してくれてありがとう!」)
:update は投票ゾーンを変更します (例: "voted. 6 votes on this")
このテーマに関する多くのチュートリアルがあります。
編集:私はそれを少し前に書きましたが、それ以来、ベストプラクティスが変更されました. 次に、邪魔にならない JavaScript を使用してそれを行う方法を見てください。優れたリソースには、Ryan Bates Bates の railscast #205と、原則を理解するためのウィキペディアの記事が含まれます。
「控えめな JavaScript」は、World Wide Web で使用されている JavaScript プログラミング言語の新しい技術です。この用語は正式に定義されていませんが、その基本原則には一般に次のものが含まれると理解されています。
Web ページの構造/コンテンツおよび表示からの機能 (「動作層」) の分離
従来の JavaScript プログラミングの問題 (ブラウザの不一致やスケーラビリティの欠如など) を回避するためのベスト プラクティス
高度な JavaScript 機能をサポートしていない可能性があるユーザー エージェントをサポートするための漸進的な機能強化[
Simply Rails 2 という本には、これに似た内容 (賛成票、反対票のようなもの) があり、物事を始めるのに良い本だからという理由だけで、それを手に取りたいと思うかもしれません。
単純にRails 2.
Rails 3 の場合はgem thumbs_up 、 Rails 2 の場合は gem vote_fu です。* アプリケーションが役に立ちます...
これがまさにあなたが探しているものではないことはわかっていますが、何をすべきかについていくつかのアイデアを探すことができる非常に優れた「星評価」プラグインがあります. それはajaxとそのすべての優れた機能を使用しています;)