StartupTechnology開発部による技術ブログ

StartupTechnologyの開発部が
開発の裏側やノウハウをお届けします。

Railsの記事一覧

2021/04/23

MVCをコンパクトにして快適なRails開発をするための処方箋

2021/03/18

Rails6.1から入ったActiveStorageのPublicAccessが良かった

最近肉体改造に励んでいるだいそんです。 さてさてRails6.1で色々な機能が追加されましたが、個人的に特に嬉しかったのはActiveStorageにおいてパブリックなURLを利用できるようになったことですね。 専用のカラムを用意しなくて済んだり、リサイズも動的にできたりと何かと便利なActiveStorageですが、以下の記事の通りこのような問題もありました。 CDNとの相性が悪い 画像のリクエストがRailsに向いてしまう DBへのリクエストが頻繁に走る 引用...
2020/07/29

開発合宿第二弾!! 顔認証を使用した入退室管理を作った話

今年はなかなか梅雨明けしませんね・・・。 夏が待ち遠しい開発部のヒヨシです。 前回の 開発合宿第一弾!! オンライン合コンアプリを作った話 に続いて第二弾! 今回は顔認証を使用した入退室管理システムについて、技術的なところを中心にご紹介します。 イベントレポートは下記に掲載していますので、こちらも併せてご覧ください。 オンライン開発合宿の成果発表会を行いました! | 株式会社スタートアップテクノロジー...
2020/07/17

開発合宿第一弾!! オンライン合コンアプリを作った話

開発合宿第一弾!! オンライン合コンアプリを作った話
コロナで自粛ムードが続くことはや数ヶ月、みなさんいかがお過ごしでしょうか。RUNTEQ事業部のだいそんです。 突然ですが、みなさん最近恋してますか? 東京都では毎日のように200人超えの新型コロナウイルス感染者が出ていますね。そんな中不要不急の外出をするのは憚られますし、ましてや合コンなんてできるはずもないですよね… 濃厚接触はしたくない、でも濃厚接触はしたい この記事はそんな社会的な課題を解決するアプリを社内の開発合宿で作りましたよという内容になります。技術的なところにフォーカスしてお話します。 (開発合宿全体の概要は別ブログにまとめてあるのでもしよかったらこちらも読んでみてください!) オンライン開発合宿の成果発表会を行いました! | 株式会社スタートアップテクノロジー...
2020/03/27

NOT NULL制約追加時のinvalid use of NULL valueを解消する

はじめまして、開発部の井上です。 本記事は既存テーブル(既存カラム)へのNOT NULL制約追加でつまずいたときのお話です。 作業前には『NULLデータに値を入れて数行のmigrationファイル作るだけ。すぐ終わるなー』と考えていたのですが、思わぬところで問題が発生しました。 はじめに作ったもの # NOT NULL制約を追加するmigrationファイル class ChangeColumnHoge < ActiveRecord::Migration def change change_column_null :hoge, :bar, false end end # update_column....
2020/02/27

enumのネガティブバージョンを定義してみた

こんにちは!日本語が少しできるブラジル人です! 早速ですが、複数条件を書くときにenumに対して否定演算子を使った事ありますか? ちなみに僕は複数条件を書くときに否定演算子を使用するのはあまり好きじゃないです。。 こんなunless文をみたときには、もうブラジルに帰って農家に転職したくなってしまいます。。 unless !user.present? && !user.done? && !...
2020/02/14

Rails + GitHub Actionsではまったこと

Rails + GitHub Actionsではまったこと
やりたいこと gemのキャッシュ yarnライブラリのキャッシュ RSpecの実行 システムスペックの実行 システムスペック失敗時のスクショをArtifactとしてアップロード DBはmysql5.7 結論 こんなymlを作りました。...
2020/01/28

フラッシュメッセージを含めたアカウントロック実装方法(gem Sorceryを使用)

こんにちは!開発部の米村です。 クライアントとお話する中で、やはり不正ログインによる個人情報漏洩については特に懸念ポイントであると感じる今日このごろ。 対策方法としては、「特定回数ログインに失敗した場合は、一定時間アカウントをロックする」 というアカウントロックが挙げられますね。 今回は、gem Sorceryを使って、アカウントロック機能が簡単に実装できることを紹介します! Sorcery 公式Githubの「Brute force protection」をベースとし、ロックの有無によるフラッシュメッセージの切り替えもしていきます!...
2019/12/25

RailsAPIモードとNuxtの組みわせでハマったこと

フロントとバックエンドで分けて開発する際にクッキー・セッションベースの認証でいつも詰まるのでここに記しておきます。 前提 サーバサイドはRails APIモード。バージョンは下記の通りです。 $ bundle exec rails -v Rails 6....
一緒にスタートアップを盛り上げませんか?