高電圧
thoughtbotの人々からの宝石。サイト上の静的なページでの作業を大幅に簡素化します。
gemは非常に簡単に動作します-必要なページをapp / views / pagesフォルダーに追加します。 その後、ページは/ pages /(file_name)で利用可能になります。 したがって、たとえば、 app / views / pages / about.hamlにあるページはexample.com/pages/aboutで利用できます 。
さらに、gemは、目的のページを引数として渡す必要があるpage_path urlヘルパーを追加します。 上記の例では、これはpage_path(:about)になります。
Githubページ
坤
多くの場合、RailsからJSにデータを転送する必要があります。 これにはいくつかの解決策があります。
たとえば、追加のajaxリクエストでそれらを個別にダウンロードできます。 データが多くなく、不要な呼び出しを行う意味がない場合、 gonはこのタスクに完全に対応します。これは、コントローラーから直接データを転送できる国内メーカーの逸品です。
gemを機能させるには、まずレイアウトに追加します。
<html> <head> <title>Application Title</title> <%= include_gon %> <!-- JS --> …
次に、コントローラーで、 gonを使用してデータを転送します。
def show @user = User.find(params[:id]) gon.user = @user end
@userのデータがJSで利用可能になり、 gonオブジェクトを介してアクセスできます。 例:
$(function() { alert(gon.user); });
gemは自分用にカスタマイズすることができます-エクスポートされた変数の名前にsnake_caseの代わりにcamelCaseを使用し、名前空間を指定し、一般的なJBuilderとRABLと友達になります。
Gon @ railscasts
Githubページ
http_accept_language
Railsアプリケーションで複数の言語をサポートするタスクに直面している場合は、 http_accept_language gemに注意することをお勧めします。 要求オブジェクトにいくつかのメソッドを追加し、その助けを借りて、どのユーザーが優先言語であるかを簡単に判断できます。 たとえば、次のように:
class ApplicationController < ActionController::Base before_filter :set_locale protected def set_locale allowed_locales = %w(ru-RU en-US) I18n.locale = request.preferred_language_from(allowed_locales) || I18n.default_locale end end
Githubページ
email_spec
メーラーの動作、送信先、送信先、送信された手紙に重要な情報(アクティベーションリンク、ユーザー名/パスワードなど)が含まれているかどうかを常に把握しておくと、非常に便利です。 database_cleaner gemの作者のCucumberを使用すると、メーラーを簡単にテストできます。
たとえば、アカウントを有効にするための手順が記載されたメールが正しいアドレスに送信され、正しいヘッダーがあり、有効化へのリンクが含まれていることを確認する必要があります。 email_specを使用すると、次のようになります。
describe UserMailer do let(:user) { create(:user) } describe '#confirmation_instructions' subject { UserMailer.confirmation_instructions(user.id) } it 'should be set to be delivered to the user email address' do subject.should deliver_to(user.email) # e-mail . end it 'should have the correct subject' do subject.should have_subject(I18n.t('user_mailer.confirmation_instructions.subject')) # . end it 'should contain the confirmation url' do subject.should have_body_text(/#{user_confirmation_url}/) # . end end end
Githubページ
heroku_san
Herokuを積極的に使用している場合は、間違いなくこのgemに注意を払う必要があります。 heroku_sanは、展開プロセスをさらに簡単かつ高速にします。
プロジェクトに複数のHerokuインスタンス( プロダクションとステージング)が必要だとします。 これを行うには、gemをインストールした後、コンソールで呼び出します:
rake heroku:create_config
このコマンドは、このプロジェクトに関連するすべてのHerokuアプリケーションを記述する構成ファイル( config / heroku.yml )を作成します。 たとえば、 実稼働環境とステージング環境の場合、次のようになります。
production: &defaults app: myfacebookkiller stack: cedar config: BUNDLE_WITHOUT: 'development:test' staging: <<: *defaults app: myfacebookkiller-staging
さて、これらのアプリケーションをHerokuで作成していない場合は、今すぐ実行してください。
rake all heroku:create
heroku_sanを使用すると、プロジェクトを一度に複数のアプリケーションにデプロイできます。
rake all deploy
または、特定のアプリケーション専用:
rake production deploy
heroku_sanは、Herokuでの作業に役立つ多くの機能を提供します。詳細については、Githubのgithページを参照してください。
Githubページ