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

IT実務未経験から約1年、東京でフリーランスのRuby on Railsエンジニアに転職。約2年半、大阪中崎町でスリランカカレーの間借りしてました。フリーランスエンジニアになるためのノウハウ、スリランカの事を発信していきます。

【Vue.js BootstrapVue】methodsでmodalをopen、closeする

開く this.$bvModal.hide(modalのid) 閉じる this.$bvModal.show(modalのid) bootstrap-vue-modalリファレンス 1、modalを開くボタンと、開閉したいmodalを作成 // some_component.vue // ボタン ログイン // 開閉したいmodal // modalの中身 2、引数で指定…

【Rspec Capybara】confirmダイアログが2回表示されるsystem specを書く

やり方 単純にダイアログの回数分、 accept_confirm をネストすればOK。 # 1回目のダイアログ page.accept_confirm do # 2回目のダイアログ page.accept_confirm do # ダイアログが全てOKなら実施したい何らかの処理 first('div[data-cell="del"]>div>form>b…

【Vue.js】methodsやcomputedを共通化(mixin)する

1、共通化したいmethodsやcomputed等を記述したファイルを作成する。 例として utils.js を作成します。 パスは javascript/packs/mixins/utils.js とします。 以下は、moment.jsで日時をparseする関数です。 # utils.js import moment from 'moment' expor…

【Rails】論理削除を有効にする方法【paranoia discard】

論理削除を有効にするための3ステップ 1、paranoiaというgemをインストール 2、モデルにdeleted_atというカラムを追加する 3、active_record.rbにacts_as_paranoiaと追記する class ApplicationRecord < ActiveRecord::Base acts_as_paranoia ←追記 self…

【マル秘情報】労働時間の少ないフリーランスエンジニアの特徴【3つ】

フリーランスエンジニアの皆さんは、 案件を探す上で、 こんな悩みや不安を持っていませんか? 「フリーランスエンジニアになったけど、激務すぎてヤバい...」 「要領よくやってるつもりだけど、なぜかいっつも労働時間が長い...」 「フリーランスって休みが…

【ActiveAdmin】formのcheck_boxで、dialogやalertの代わりに注釈(hint)をつける

ActiveAdminで管理画面を作っていて、 「非エンジニアのサポートチームの人が使うから、チェックボックスにはダイアログかアラート出したいな...」 と思い、 「chack_boxをON、OFFしたらdialogかalertを出すオプション」 的なものを探していたのですが、 che…

【ActiveAdmin】has_many + nested_attributes_for + allow_destroyなassociation_formで生成される削除ボタンをカスタマイズする

「allow_destroy: true」 を使わず、 f.inputのname属性に 「:_destroy」 を指定すればOKです。 例 form do |f| f.inputs 'Contract' do # 親モデル Contract end # 子モデル Option f.has_many :options, do |o| # allow_destroy: trueは不要 o.input :_des…

【ActiveAdmin】デフォルトのcreateとupdateの処理をカスタマイズしたい

controller do〜endブロックの中で、 createなりupdateメソッドをオーバーライドすればOKです。 オーバーライドする際は、 リダイレクトの処理も書いてあげる必要があります。 ちなみに、 createもupdateも、 デフォルトのリダイレクト先は「showアクション…

【ActiveAdmin】select_boxで表示するcollectionのscopeを指定したい

結論 collectionオプションを使います。 collectionの引数に、 scopeを渡してあげればOKです。 例 f.inputs for: [:plan, f.object.plan || Plan.new] do |p| p.input :name, as: :select, collection: Plan.all.map(&:name) # Planモデルの全nameをセレクト…

【ActiveAdmin】formで、belongs_toなmodelのstrong_parameterを指定する

permit_paramsに、 子モデルの「名称」と「属性」を指定すればOKです。 例えば、 下記のようなモデルがあるとします。 # 親 class Plan attribute :name attribute :price has_many :contracts end # 子 class Contract belongs_to :plan end この場合、 Act…

【ActiveAdmin】フォームのタイトル(パネル)部分を色付けする

panel do〜endブロックの中に、 f.inputを入れてあげればOKです。 form do |f| panel '次月プラン' do f.input :name f.input :id end end するとこんな感じになります。 f:id:mah666hhh:20201107111535p:plain nameのラベルは、 I18nで翻訳が当たっているの…

【ActiveAdmin】ヘッダー下のデフォルト作成ボタンを非表示にする

config.clear_action_items! の1行を追加すればOKです。 ActiveAdmin.register Item do # これを追加 config.clear_action_items! end これで、 ヘッダータイトルの作成ボタンが非表示になりました。 f:id:mah666hhh:20201107092354p:plain clear_action_ite…

【Mac】Apple Magic Keyboardのレビュー・感想【deleteキーが壊れたら買いましょう】

今回は、 【Mac】Apple Magic Keyboardのレビュー・感想【deleteキーが壊れたら買いましょう】 について書いていきます。 Macのキーボードが壊れて困っている人は多いのではないでしょうか? 例えば、 「deleteキーが壊れた...」 「最近〇〇のキーの反応が悪…

【2021年】Free Engineer Officeの評判、支払いサイトやマージンは?

フリーランスエンジニアの皆さんは、 案件を探す上で、 こんな悩みや不安を持っていませんか? 「フリーランスエージェントの案件、Web上に古いものが残ってて二度手間で面倒くさいんだよな・・・」 「マージンの低いフリーランスエージェントないかなあ・・…

【2021年】レバテックにRubyやRailsのフリーランス案件は無い?

まずはレバテックフリーランス全体で、 どれくらいの案件があるのか見てみます。 2020年11月28日現在、 レバテックフリーランスに掲載されている案件数は「12413件」です。 f:id:mah666hhh:20201128083657p:plain さすがフリーランスエージェント最大手だけ…