https://qiita.com/keeya/items/c96a0393c76f5560ee41 https://qiita.com/puremoru0315/items/f1d459b663fd3b715dee https://qiita.com/To_BB/items/01863aa50d628c069b64 Twitterログイン認証を解説する記事は数多いですが、Railsチュートリアルなどでメール認証を実装してしまった後だと、残念ながら上の記事にあるコードをそのままコピペしてもログイン認証は機能しません。 なんでって? self.find_or_create_by(provider: provider,uid: uid)では、バリデーションに弾かれてしまうからです。 find_or_created_byメソッドは、引数で渡したカラムでfindをかけて引っかからなかったらcrea
RailsでAPIの実装を依頼され、その時にGrapeを使用しましたので、使用方法を忘れないように書き残しておきたいと思います。 Grapeを使用すると、Restful な WEB-APIが簡単に実装できます。 Grapeの導入 前提 OS:Centos7 Rubyのバージョン:2.4.1 Railsのバージョン:5.1.6 Railsプロジェクトは作成済 Gemfile 上記を追記して、bundle installする。 フォルダ構成 APIのソースはapp/apis/配下に配置することにしました。 ディレクトリ構成およびファイル名は、クラスの名前空間およびクラス名と一致させる必要がありです。(大文字、小文字の区別なし) この例では、1つのバージョンしか作成しないため、「v1」フォルダのみとなりますが、複数バージョン作成したい場合は、「v2」などのフォルダを作成して下さい。 手順 Con
RubyインタープリターであるMRIは、大規模なRailsアプリケーションでメモリー不足になりがちという深刻な問題があります。MRIはデフォルトでOSのメモリアロケーター(主にglibc)を使用しますが、Rubyのメモリー割り当てパターンでは上手く動作しないようです。この動作はLinux上のglibc特有のもので、macOSやBSDは、より品質の良いメモリアロケータを持っているため、断片化の傾向は見られません。 Nate Berkopec氏はRubyのメモリ周りに関する記事を公開しており、そちらにかなり詳しく書かれているので興味がある場合はそちらを見ると良いと思います。 下記のようにRubyのメモリアロケータをjemallocに切り替えることで、かなりの効果が見られます。 Before After しかし、例えばAlpine Linuxでは互換性の問題があるため、AlpineベースのDoc
本番環境にService Workerを導入しましたので、そちらの実装方法についてまとめます。 一部キャッシュ管理にworkbox-swを使ってます。 正直Railsはあんまり関係ないかも。 導入方法については下記記事を書きましたので、そちらを参考にして見てください [Sprockets管理のRails4環境でWebサイトをPWAに対応する方法のまとめ(準備〜デプロイ編)] (https://qiita.com/ykyk1218/items/f296d9078c71cd27db78) 各種イベントハンドリング キャッシュ管理 オフライン対応 計測 エラーハンドリング 上記5つの視点でそれぞれの実装方法を確認します。 javascriptの書き方は今風ではなく、古い書き方になっていますが、ご了承ください........ 今回のやりたいこと全体像 カテゴリAの記事にアクセスした時に、カテゴリA
TL;DR Devise Securityを使うことで、過去に使用されたパスワードの制限や多重ログイン禁止などのエンタープライズ向けのセキュアな機能を提供できる。 はじめに RailsでWebアプリを作成する際、Deviseを使って、ユーザ管理を行うことが多いと思います。 Deviseはかなり便利なgemですが、過去に使用されたパスワードの制限や多重ログイン禁止などのエンタープライズ用のセキュリティ要件までは取り扱っていません。 そこで今回はDeviseの使用を前提として、さらにDevise Securityを使用して、よりセキュアなRailsアプリを構築します。 Devise Securityについて Devise Securityは、Deviseの拡張で、下に挙げるような機能を追加します。 ちなみに、開発が止まってしまったDevise Security Extensionから公式にfo
###初めまして 今日から自身のprogrammingの日記をつけようと思います。 ###今日学んだこと ####今日はprogateのRuby On Rails学習コースをしました。 変数session... getとpost applicationコントローラー to_iメソッド ######変数session ページを移動してもユーザー情報を保持し続けるために、sessionという特殊な変数を用います。sessionに代入された値は、ブラウザ(InternetExplorer, GoogleChrome等)に保存されます。sessionに値を代入すると、ブラウザはそれ以降のアクセスでsessionの値をRailsに送信します。 ######getとpost get : データベースを変更しない場合 post : データベースを変更する場合、sessionの値を変更する場合 #####
前置き 先日(2015/05/30)、Python東海 第27回勉強会で、「Jupyter + RISE による ライブデモ&プレゼンテーション」という発表をしてきました。 発表は、資料を Jupyter(IPython Notebook)で大枠を作り、RISE でリアルタイムスライド表示しながらその場で編集し、その場で Gist にアップ → nbviewer に登録 → nbviewer でのスライド表示、という流れで実施1。上記の発表資料は最終的に nbviewer で公開したスライド(後で少しだけ再編集したもの)です。 で、スライド関係は良かったのですが、主にそれ以外の環境設定周りについて、短い発表時間の中でだいぶ端折ったり、発表資料も最低限のことしか書いていないので、自分がやったことを補足しておこうと思います。 なおこの記事は、先日の記事「IPython + IJulia → J
(2019.06.25 追記) rbczmq は現時点では非推奨です。どのプラットフォームでも ffi-rzmq を使いましょう。 IRuby を使おうとすると rbczmq の中で SEGV が発生してしまう場合は、zeromq と czmq の組み合わせが悪い可能性がある。rbczmq が正しく動くインストールのパターンを以下に紹介するので、一番好ましいものを試してみると良い。 rbczmq は gem パッケージの中に zeromq と czmq を同梱しているが、後述する事情により同梱ライブラリを使わない方法を先に紹介する。 (1) homebrew や apt-get でインストールしたシステムの zeromq, czmq を使う この方法は、ディストリビューションで用意されている zeromq や czmq を確実に使うので、最もオススメしたい方法である。やり方は、まずシステム
Raspberry pi 3をjupyter notebookサーバにしたい。 公式はanacondaの使用を強く勧めているが、arm向けにはanacondaが提供されていない(Minicondaはあるっぽいけど未確認)。 また便利なセットアップ済み公式dockerイメージとかも見た感じ転がってない。 仕方ないのでシコシコインストールした作業ログ。 jupyter本体(python2.7の場合) Installing Jupyter Notebook — Jupyter Documentation 4.1.1 alpha documentation ただpipが古いとjupyterのインストールに失敗するので、事前にpipのアップデート。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く