プログラミング -> 言語 -> Ruby
背景 以下の二つの gem を同時に使う場合です。
Twitter の gem 理由 Rate Limits があるから。 方法 方法は簡単です。ツイートの取得の際に users メソッドを用いればよいです*1。引数として配列を与えます。 補足 一度の API を叩いて得ることができるユーザオブジェクトの個数の上限は 100個であること…
Twitter の gem 理由 Rate Limits があるから。 方法 方法は簡単です。ツイートの取得の際に statuses メソッドを用いればよいです*1。引数として配列を与えます。 補足 一度の API を叩いて得ることができるツイート個数の上限は 100個であることには注意し…
一言で ユーザを指定するときに「アラビア数字」を用いる場合、「文字列」なのか「数値」なのかを意識的に区別する。
Ridgepole こちらです。 データベースの構造の履歴を取る Ridgepole はマイグレーションツールとしての側面が強いですが、データベースのスキーマを取得するツールとしても便利です。 実行時のオプションに --export をつけるだけで指定したデータベースのス…
MiniMagick これです。RMagick はしばらくメンテがされていないようなので、現在ではこちらが選択肢になるのではないでしょうか。
結論 Sidekiq では キーワード引数 は使えない(今のところ)。 現象 知見 注意 perform の引数としてだけではなく perform 内のメソッドでもキーワード引数が使えません*1。 *1:はず
結論 これが全てです。
Whenever これです。Whenever is a Ruby gem that provides a clear syntax for writing and deploying cron jobs. 同じユーザが Whenever を複数実行したとき foobar というユーザが schedule_a.rb を whenever --update-crontab したとします。その上でさ…
結論 gem があります*1。 *1:感謝しかない
背景 かなり特殊な経緯です。 以前はデプロイ先のユーザは root でデプロイしていた それを一般ユーザに変えようとした そうすると表題のエラーが出た SSHのログインは問題ない
状況 こんなエラーが出たときです。 cannot load such file -- redis/namespace 結論 redis-namespace を入れる(gem)。 解答 公式ドキュメントにしっかりと書いてあります。 あとこの Issue にも。
結論 大丈夫な例 /(?<foobar>[a-z]+)/ =~ 'abcdefg' puts foobar #=> abcdefg だめな例 regexp = /(?<foobar>[a-z]+)/ regexp =~ 'abcdefg' puts foobar #=> undefined local variable or method `foobar' for main:Object (NameError) 感想 そりゃそうなのかな、という感想</foobar></foobar>…
結論 sidekiq-limit_fetch を使う。
はじめに 以下の記事の分家です。
結論 標題のままです。具体例を見てもらったほうが早いかと思います。
Ruby です。 一つの解決法 誤っている例 MyApplication::Client.new( host: 'https://www.example.com', port: 80, username: 'MY_USERNAME', password: 'MY_PASSWORD', use_ssl: true, ) 一見誤りはないように見えます(見えました)。結構ハマりました*1。…
結論 Tweetオブジェクトの uris メソッドを用いた戻り値*1の要素に対してさらに url メソッドを用いる。 具体例 以下のツイートを例とします。 【イベントレポート】Intel、最大5GHz達成のCore i7-8086Kを6月8日から発売... (71 users) https://t.co/PUbnmOl…
エラーメッセージ Uglifier::Error: Unexpected token: name (foobar_foobar). To use ES6 syntax, harmony mode must be enabled with Uglifier.new(:harmony => true). 結論 config/environments/production.rb を以下のように書き換えましょう*1。 変更前…
結論 ツラミがある。 答えはほぼこれかと [Rails]複数のデータベースに接続する - Qiita 上記からのリンク記事 Rails で複数 DB の migration をする方法の調査と考察 - Qiita https://qiita.com/1990kawa/items/1712e261f155e34459ae
結論 安直にこれで。 = link_to 'リンクです!<i class="material-icons">link</i>'.html_safe, 'https://example.com' 備考 ブロックを使うとごちゃごちゃしちゃうので、html_safe メソッドを使っていることを認識した上でこれで良いかと思います。 参考
結論(の一つ) database.yml の中の記述で、コメントの中に erb の書式で記述しているものがあり、さらにその返り値が例外になるものがあるとき標題のエラーが出る。
結論 video_tag を使う 具体例 your_video_name.mp4 という動画ファイルを app/assets/videos/your_video_name.mp4 に置いた場合です autoplay と loop をオプションで指定してます <%= video_tag 'your_video_name.mp4', autoplay: true, loop: true %> オ…
結論 spec/rails_helper.rb の ActiveRecord::Migration.maintain_test_schema! をコメントアウトする # ActiveRecord::Migration.maintain_test_schema! 背景 既存のデータベースを読み出し専用で扱う場合にこうしました*1。 *1:レアケースでしょう
結論 render_views を実行する。 例 describe Api::UsersController do render_views describe... 背景 Jbuilder を使って遭遇しました*1。 参考 http://konifar.com/1198 *1:異論はあると思いますが……
結論 /Capfile(の一部)を以下のように記述する。 # require 'capistrano/rails' require 'capistrano/bundler' require 'capistrano/rails/assets' # require 'capistrano/rails/migrations'
結論 config/environments/production.rb 内の以下の記述を書き換える。 config.public_file_server.enabled = ENV['RAILS_SERVE_STATIC_FILES'].present? 上記の記述を以下のようにする。 config.public_file_server.enabled = true
結論 config/master.key をデプロイする必要がある*1。 解決方法(の一つ) set :linked_files, 'config/master.key' という行をデプロイ設定のファイルに追加して、master.key ファイルを shared/config/master.key の場所に置けばよいです。 備考 環境変数…
前提 $ rails credentials:edit で編集した内容が以下のとおりであったとします。 # Used as the base secret for all MessageVerifiers in Rails, including the one protecting cookies. secret_key_base: 1234567890 my_api_key: abcdefg foo: bar: hogeh…
結論 Timeオブジェクトの utcメソッド を用いる。 実例 Time.now #=> 2018-05-16 17:40:28 +0900 Time.now.utc #=> 2018-05-16 08:41:02 UTC