スリ飯屋MaLankaのフリーエンジニアな日々

このブログでは、フリーランス5期目となる自身の実体験から、フリーランスエンジニアになるためのノウハウ、ブログや沖縄移住、スリランカの最新情報について発信します。

【ActiveAdmin】レコードが無い場合の、まだありません。「作成する」を非表示に【blank_slate content link】

※記事内に提携先企業のアフィリエイト広告(リンク、バナー等)、Google広告を含む場合があります


【ActiveAdmin】レコードが無い場合の、まだありません。「作成する」を非表示に【blank_slate content link】


こんにちは、現役沖縄フリーランスエンジニアのmah(MaLanka)です。


このブログでは、

僕がIT未経験から約1年でフリーランスエンジニアになるまでの過程、

ノウハウなどを書いていきます。


今回は、


  • 【ActiveAdmin】レコードが無い場合の、まだありません。「作成する」を非表示に【blank_slate content link】


について書いていきます。




ActiveAdminで、

1件もレコードが無い状態のまま、

indexのページを表示すると、


"%{resource_name} はまだありません。「作成する」


というようなメッセージが表示されます。




この、

「作成する」がリンクになっているので、

非表示にしようと思ったのですが、

ActiveAdminのデフォルトの機能には無い様子...




色々調べていると、

一応解決策が見つかったのと、

今後もたまに使うかと思ったので備忘録にしておきます。








解決策


ActiveAdmin::Views::Pages::Indexというクラスにある、

render_blank_slate というメソッドにモンキーパッチを当てます。


  • render_blank_slate

www.rubydoc.info


  • ja.ymlのキー (blank_slate、content、link)

github.com




やり方


1、

initializerで、モンキーパッチを実装するファイルを読み込む。


クックパッドさんの記事を参考にしました。


techlife.cookpad.com




lib/monkey_patches/active_admin というディレクトリを作ります。


他への影響を抑えるため、

initializer内で読み込むディレクトリも最小限にします。


# config/initializer/active_admin_monkey_patches.rb
Dir[Rails.root.join('lib/monkey_patches/active_admin/**/*.rb')].sort.each do |file|
  require file
end








2、

1で指定したところにモンキーパッチを実装。


例えば、

monkey_patches/active_admin/index_monkey_patch.rb のようなファイルを作ります。




今回は、

ActiveAdmin::Views::Pages::Indexというクラスにある、

render_blank_slate というメソッドにモンキーパッチを当てるため、

下記のようにします。


# monkey_patches/lib/active_admin/views/pages/index_monkey_patch.rb

require 'active_admin/helpers/collection'

module ActiveAdmin
  module Views
    module Pages
      class Index
        protected
        def render_blank_slate
          blank_slate_content = I18n.t("active_admin.blank_slate.content", resource_name: active_admin_config.plural_resource_label)
          insert_tag(view_factory.blank_slate, blank_slate_content)
        end
      end
    end
  end
end




ソースは下記を参考にしました。

https://waiyanyoon.com/blog/2015-07-31---replacing-content-displayed-in-active-admin-blank-slate/waiyanyoon.com








3、

サーバー再起動。








4、

これで、

"%{resource_name} はまだありません。「作成する」

「作成する」が消えているはずです!




RailsやRubyを学びたい人へ


RailsやRubyを学びたい人は、

RailsHack(レイルズハック)という、

最近できた新しいプログラミングスクール(今なら通常価格69,800円が、早期割で29,800円!)か、

Udemy で下記のコースを受講すると良いです★


✅1. フルスタックエンジニアが教える 即戦力Railsエンジニア養成講座

✅2. 【はむ式】ハンズオンで学ぶRuby on Rails 6【Dockerにも触れられる】 <- おすすめ。ハムさんはReactやTypeScriptの教材も非常に丁寧。

✅3. はじめてのRuby on Rails入門-RubyとRailsを基礎から学びWebアプリケーションをネットに公開しよう




また、

Udemy は定期的にセールをやっていますし(90%OFFとかもザラ)、

「30日間なら返金できる」ので、

満足できなかった時でも安心です。



【公式】RailsHack(レイルズハック)

【公式】Udemyで学んでみる




最後に


下記の表に、

フリーランスエンジニア向けの人気エージェントをまとめてみました。


エージェント選びで悩んでいる方は是非参考にしてみてくださいね★


エージェント 詳細 最高単価/月 設立
フリエン(furien) 評判をチェック 180万円/月 2011年
ギークスジョブ 評判をチェック 180万円/月 2011年
フォスターフリーランス 評判をチェック 230万円/月 1996年
pe-bank(pebank) 評判をチェック 200万円/月 1989年
Midworks(ミッドワークス) 評判をチェック 200万円/月 2013年
レバテックフリーランス 評判をチェック 140万円/月 2005年




あわせて読みたい


www.malanka.tech


www.malanka.tech


www.malanka.tech


www.malanka.tech