投稿

8月, 2019の投稿を表示しています

Ruby on Rails の User 認証ライブラリである Devise を使ってみる

イメージ
初めに ¶ 以下操作は WSL で実施しています。 Rails の操作ばかりなのでOSには依存しないと思いますが。 Ruby / Rails の環境は以下です。 $ ruby -v ruby 2.6.3p62 (2019-04-16 revision 67580) [x86_64-linux] $ rails -v Rails 6.0.0 Getting Started をなぞる ¶ インストール ¶ Deviseをテストするために新規プロジェクト作成。 既にプロジェクトがあってそこでテストできるならここは別にやらなくてもよいです。 rails new devise_test -d postgresql # プロジェクトの作成が完了したら移動 cd devise_test devise を入れるために Gemfile に以下の記述を追加する。 gem 'devise' Gemfile の内容を更新したので Bundle を利用してインストール。 bundle コマンド単体で bundle install の効果があります。 bundle rails generate により、 devise の最低限必要な設定ファイルを生成する。 rails generate devise:install この時に以下のファイルが生成されているはず。 create config/initializers/devise.rb create config/locales/devise.en.yml 本家サイトの Getting Started によると、 これらの設定ファイルを絶対読め、と書いてあるので読みましょう。 といっても Devise の設定ファイルとLocalizationファイルなので片方は読むというほどでもない気がしますが。 まぁ何となく雰囲気だけ察する感じで。 そして、さっきのコマンドで以下のようなガイドが表示されるので対応していく。 Some setup you must do manually if you haven't yet: 1. Ensure you have defined default url options in your environ

WSL へ Neovim を入れてみる

イメージ
Windows Subsystem for Linux (WSL) へ Neovim を入れてみようのコーナー。 バージョン $ uname -r 4.4.0-18362-Microsoft インストール WSLを使っている場合には普通にコマンドラインから入れることが可能。 sudo apt install neovim GUIが欲しい人は以下のコマンド sudo apt install neovim-qt ※GUIが欲しい人は別途GUIが開けるようにWSL側の設定をする必要があります Pluginを入れる インストール後、Pluginを入れる。 自分は vim-plug  を利用していたのでその入れ方。 多分大抵の人は dein.vim を使っていると思われるのでそちらのリポジトリ参照願います。 dein.vimの方がNeovimとVimを併用するときの設定とかあるので有用かも。 自分は移民がめんどいのでvim-plugのまま。 Pluginを入れる前に、NeoVimの設定ファイルのありかについて。 NeoVimはfreedesktopの XDG Base Directory Specification という仕様に従ってファイルの格納場所を決定しているため、 ~/.vimrc ではなく ~/.config/nvim/ という場所の init.vim というファイルを設定ファイルとして読み出すようです。同じく、インストールするPlugin本体を格納する場所も変わるため、手動で何かを入れたい場合には注意。 https://github.com/junegunn/vim-plug 上記の公式リポジトリに存在する Neovim のセクションから、 Unix でのインストール方法を実施。 curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs \     https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim そのあと、 .vimrc をNeoVim用の場所へsymlinkします。 # ディレクトリ作成 mkdir -

Web Frameworkの速度比較サイトからどれを使おうかなと選定

イメージ
早さのイメージ Web Frameworkのベンチマークサイトがあったので、レスポンスタイムの観点から調査。 フィルターでフルスタック & メジャーな言語のみでフィルターしてみた。 参考にしたのは こちらのサイト になります。 上位のものを調べてみると、自分は知らないものばかり。 いったいどんなものなんだろう、とざっくり調べたものになります。 Joobyとは Joobyというものが上位を占めている。 Joobyってなんだろう、と調べるとJavaフレームワーク。 Javaって今の時代早くなったんですね。 なんだか昔はJVMで動くから遅いというイメージがあったんです。 Jooby公式サイト DBのORM的なものを入れるとDjangoやRailsのような感じでフレームワークとして動く模様( 参考サイト )。 これだったらRails / Django に慣れている人でも使いやすいかもしれない。 Javaというのでてっきり大仰なコードを書くことになるのかと思ったが、意外とそこまで難しくなさそう。 その他の上位ランカーたちについて Gemini Javaのframeworkらしい。 さっきのベンチマークを公開している会社が作ってるやつのようですね。 GithubのREADMEの説明がものすごく簡素...... https://github.com/TechEmpower/gemini Zebra このMediumの投稿 を見る限り、後述のGiraffeというFrameworkの性能を改善した新規バージョンなのかな? ちょっと探してみても公式サイトらしきものが見当たらず、見つけられたのが 今回のベンチマークのリポジトリ のみ。 中身を見てもあんまりそれらしき記述量じゃないので、Dockerのイメージを引っ張ってる部分に何かあるかとみてみたが、特になさそう。 なので、多分上記リポジトリの中身がZebra本体なのかもしれない。 Act こちらもJavaフレームワーク。公式サイトがhttps未対応だし、色合いが原色すぎて嫌い(調査でもなんでもない) http://actframework.org Cutelyst QtのWeb framework。 Qt自体がUIフレームワークだっ