タグ

rubyに関するtobibako45のブックマーク (79)

  • RubyMineでリファクタリングいくつか - Qiita

    ここ3ヶ月ほどRubyMineでRubyを書いてますが、まだまだ使いこなせてない機能がたくさん、、 今回は、リファクタリング関連で使えそうなショートカットや機能について、いくつか紹介させて頂きます! クラス名、メソッド名、変数名のリネーム shift + F6 routingのファイルやspecなどからも、関連範囲を検索して置換してくれます。 独立したメソッドにロジックを切り出し command + option + M 変数を抽出して切り出し command + option + V viewもサクッとpartial化 Refactor -> Extract -> Partial 共通化したいところをサクッとpartialにしてくれます。 他のリファクタリング control + T 基的なメニューが表示されます。 クイックフィックス(Intention)を呼び出す option +

    RubyMineでリファクタリングいくつか - Qiita
  • GitHub - everyleaf/el-training: 株式会社万葉の新入社員教育用カリキュラム

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - everyleaf/el-training: 株式会社万葉の新入社員教育用カリキュラム
  • インスタンスメソッドとクラスメソッドはどのようにして使い分けるべきか?(Rubyの場合) | mah365

    Rubyといったオブジェクト指向言語を学ぶと、メソッドの定義方法としてインスタンスメソッドとクラスメソッドという2通りの定義方法があることを学ぶと思います。しかし、言語自体のガイドブックには「定義方法にインスタンスメソッドとクラスメソッドがある」と書いてあるだけで、大抵その使い分けについては書かれていません。 そういう訳で、このエントリではその使い分けについて少し考えてみたいと思います。理論的に厳密な使い分けを目指すというよりは、そもそも使い分けの検討が全くつかない!という方に向けて、その指針の一助となることを目指します。 インスタンスメソッドとクラスメソッドとはそもそものところ、Rubyといった「オブジェクト指向の考え方」を実装した言語の機能です。その機能がなぜあるのか?というそもそものところは、オブジェクト指向の考え方にさかのぼることになります。 そこで、インスタンスメソッドとクラスメ

    インスタンスメソッドとクラスメソッドはどのようにして使い分けるべきか?(Rubyの場合) | mah365
  • 速習テンプレートSlim(HTML作成編) - Qiita

    テンプレートエンジンSlimを使ってスマートにHTMLを作成する 昨日うちの事務所で開催したagatsuma.survive#02の中でSlimの説明が思ったよりも好評だったので改めてまとめてみます。 このエントリでは Slimを使ってHTMLを作成する ことだけを目的としているため、動的にSlimでゴニョゴニョするような話は出て来ません。HTMLの代替にSlimを使う、といった主旨の内容です。プログラムの話も出て来ませんが、残念ながらコマンドラインを少し使います。 Slim とは? 拡張子は .slim view の構文を質的な部品まで減らすことを目指したテンプレート言語 Ruby製のテンプレートエンジン 高速, 軽量 インデント重要 用途 Railsプロジェクトのテンプレート Sinatra(Padorino)のテンプレート HTMLの代替(個人的には) SlimでHTMLを作成する

    速習テンプレートSlim(HTML作成編) - Qiita
  • Slim入門をして書き方を練習をしました - Qiita

    Slim入門ということで書き方の練習を始めました。この記事ではHTMLのViewをSlim形式に書き換える際のポイントを書いていきます。 Slimとは Ruby製のテンプレートエンジンです。HTMLタグを短く書くことができます。 ボクはRailsのビューを書くのに使っていますので、Railsでの使用を想定しています。 Railsへの導入 gemファイルにslimの読み込みを記述します。 あとはbundle installでslimがインストールされます。 slim-rails が入った後にrails generate コマンド経由でviewが生成された場合に、.erbのファイルではなく.slim拡張子のファイルが出力されます。 HTMLからSlimへの変換ツール HTMLからSlimへの変換は、変換ツールがあります。まだSlimに慣れていない場合は、ツールを使いながら練習するとわかりやすい

    Slim入門をして書き方を練習をしました - Qiita
  • 執筆活動を支える技術 #ruby超入門 - Qiita

    「ゼロからわかる Ruby🔰超入門」というを書きました。共同執筆での作業を効率的に進められるように、編集者・レビュワーさんを含め、みんながいつでも最新の原稿を確認できるように環境を整えました。ここでは、技術面・環境面で工夫したこと、得た知見を共有します。書籍に限らず、技術文書の作成にも使えます。 はじめに このは、 @igaiga さんと共同で執筆しました。イラストを描いてくれた @becolomochi さんを含めて、3人での共同作業でした。原稿を書いてから公開するまでのフローはこんな感じです。プログラミングでの開発に似ています。 原稿を書く (Asciidoc, Atom, Visual Studio Code) 共有する (GitHub, Slack) HTML/PDF形式に変換する (Rakefile, CircleCI) 限定公開する (docker, nginx) Ste

    執筆活動を支える技術 #ruby超入門 - Qiita
  • Bundler 2.0の変更点 - Qiita

    先日リリースされたRuby2.6で標準ライブラリに取り入れられたBundlerですが、2019年1月3日にv2.0.0がリリースされました。 v1.17からの変更点は上記リンクに書かれているとおりですが、日語での情報が見当たらなかったので、ここで紹介しておきます。 Ruby 2.3以上、RubyGems 2.5以上が必須に Ruby 2.2系のサポートは2018年3月で終了しました。それに伴って新しいBundlerでもサポートされません。 Bundler 2.0.0ではRubyGems 3.0以上が必須とされていましたが、インストール時に問題が多発したようで、翌日にリリースされた2.0.1でRubyGems 2.5に戻されました。 Githubからのインストール時にhttpsがデフォルトに

    Bundler 2.0の変更点 - Qiita
  • Ruby on RailsのAjax処理のおさらい - Qiita

    何気に、アプリケーションで取り扱うデータ量が増えた場合や、大容量データをデータベースとやり取りする時なんかは、Ajaxを使ってデータ通信をバックエンド側に押しやることで、WEBフロント側のUXからパフォーマンスの悪さを改善できたりする。また、ネットワーク経路的にproxyサーバとかを中継するような環境間でデータのやり取りをする場合などに、proxy側で接続時間にリミットがかけてあったりすると、通常アクセスではデータ通信時間がリミットに達して503エラーとかになってしまうような処理でもAjaxで通信をバックエンド化することで、回避できたりもするのだ。 通信帯域が小さいスマートデバイスが主力である今のご時勢、Ajaxによる非同期処理は、言語やフレームワークを問わずに必須な技術になっている。 私の主力スキルはPHPなので、PHPJavaScript(jQuery)やWordPressでのAja

    Ruby on RailsのAjax処理のおさらい - Qiita
  • 目次 · Ruby on Rails 256 Tips

  • 【Ruby on Rails】require と permit の使い方がよく分からない - きゃまなかのブログ

    概要 はじめに params の中身を確認 params.require の中身を確認 params.require.permit の中身を確認 おまけ 配列のパラメータを受け取りたい場合 まとめ 概要 Rails 4 からストロングパラメータと言う新機能が導入されました。 具体的には require と permit と言うメソッドのことです。 Scaffold で Controller を作成する際にデフォルトで適用されるのですが、使い方がよく分からず、いつも削除していました。。 今回、require と permit の使い方を調べてまとめました。 はじめに 「名前」と「メールアドレス」を属性に持つ User モデルを Scaffold で作成してみます。 $ rails generate scaffold User name:string email:string すると、Cont

    【Ruby on Rails】require と permit の使い方がよく分からない - きゃまなかのブログ
  • Ruby on Railsを学ぶときに常に意識しておけばよかった10のこと - Qiita

    プログラミングの土地勘がない状態で、RubyRailsを勉強しだすとまあ100%挫折しますね。なんでかっていうと、Webやインターネットの知識や、数学やプログラミングの原理など下地になる考え方やお作法があって、それに慣れていないと1つ1つの概念が頭に入ってこないから。 これは会計でも同じで、例えば税効果会計って、費用収益対応の原則や法人税に対する理解がないと1つ1つの処理がなぜそうなっているのか腹落ちしない。 なので、この投稿では、僕が仕事の合間を縫って悶絶しながらRubyを勉強して、あーでもないこーでもないと考えて、現時点でこの考え方を押さえておけばもっと学習時間を短縮できたなーということをまとめようと思う。正直まだ僕は初心者レベルなので、もしかしたら間違っていることもあるかもしれないので、その場合はその都度修正させてください。 1. オブジェクトとメソッドと変数の関係を正しく捉える

    Ruby on Railsを学ぶときに常に意識しておけばよかった10のこと - Qiita
  • Rails初心者から中級者になったと感じたきっかけ - nigoblog

    エンジニア(プログラマー)をやっていると基的には徐々にレベルアップしていきます。 しかしある点で閾値を越えて、レベルが一気に上がると感じる瞬間があります。 皆さんどうでしょうか? 自分の場合は クラスメソッドとインスタンスメソッドの違いをはっきり理解したことがそのきっかけでした。 これまでぼんやりとモデルにメソッドを追加していたものがかなり自信を持ってメソッドを追加出来るようになりました。 今回はクラスメソッドとインスタンスメソッドの違いを簡単に紹介して、他にも初級者から中級者に上がるようなパターンを考えてみたいと思います。 クラスメソッドとインスタンスメソッドの違い 当にその名の通りなんですが、 クラス全体で使えるのがクラスメソッド あるクラスのインスタンスで使えるのがインスタンスメソッド 具体例を書くと、rubyでは class Dog #クラスメソッド def self.chog

    Rails初心者から中級者になったと感じたきっかけ - nigoblog
  • [*Rails*] deviseの使い方(rails4版) - Qiita

    $ rails g devise:install create config/initializers/devise.rb create config/locales/devise.en.yml =============================================================================== Some setup you must do manually if you haven't yet: 1. Ensure you have defined default url options in your environments files. Here is an example of default_url_options appropriate for a development environment in config/e

    [*Rails*] deviseの使い方(rails4版) - Qiita
  • [*Rails*] deviseの使い方(rails5版) - Qiita

    はじめに 2020/04/04 Rails6版はこちら [Rails] deviseの使い方(rails6版) Rails5で再検証版です。 以下のRails4のときのやつを現状(2016/11/12, 13)のバージョンで確認して、一部バージョン上がってうまく動かないところを修正したりした感じです。 [Rails] deviseの使い方(rails4版) 【前回】 rails : 4.2.0 ruby : 2.2.0 devise: 3.4.1 ↓ 【今回】 rails : 5.0.0.1 ruby : 2.3.1 devise: 4.2.0 あと、上の記事で最後に「全部まとめきれてないので、忘れないうちにちょっとずつ追加していこうと思います。」とか書いていながら全く追加することはなかったので、追加しようと思ってたものをちょっとだけ思い出して追加したバージョンです。 deviseとは ユ

    [*Rails*] deviseの使い方(rails5版) - Qiita
  • Railsで何をやっても Routing Error uninitialized constant ~と言われて泣きそうになった時

    TOP Tips Railsで何をやっても Routing Error uninitialized constant ~と言われて泣きそうになった時 昨日まで、午前中まで、ちょっとさっきまで、正常に動いていた Ruby On Rails のアプリが、急に何をやっても「Routing Error : Uninitialized constant XXXXX Controller」というエラーになってしまい、うんともすんとも言わなくなってしまうという謎の症状に陥り、原因究明まで1ヶ月ほど泣きそうになっていたというしびれる経験をしたので、ここに解決までのTIPS(もとい、奮闘記?)を書いておこうかと。 犯人捜索編 まずはもうトラウマに近くなったこのRailsのエラー画面…。 まず、このエラーに陥ると、Railsくんは直接URLを指定して呼び出されるコントローラーを切り替えても、いやもうそれ以外何

  • Rubyでオブジェクトの中身を調べたい時によく使うメソッド - Qiita

    Rubyはクラスの定義やメソッドの定義の情報を実行時に持っているので、 pry などを使用してオブジェクトが今どういう状態なのか簡単に確認できる。 知っておくと便利な確認方法をメモとしてあげておく。 テスト用のコード class Sample @val = "" @@val2 = "class_variable" def initialize @val = "instance_variable" end def show puts @val end end sample = Sample.new

    Rubyでオブジェクトの中身を調べたい時によく使うメソッド - Qiita
  • Rails における値オブジェクトと ActiveRecord の composed_of - Qiita

    Rails の ActiveRecord には値オブジェクト (Value Object) を便利に使うための composed_of というものがあるらしいのでメモっとく。 エンティティ (Entity) と値オブジェクト エンティティと値オブジェクトはドメイン駆動設計におけるモデルを表現する3パターンの要素のうちの2つだ。 エンティティ からエンティティの説明を引用しておこう。 多くのオブジェクトは、質的に、その属性によってではなく、連続性と同一性 (identity) によって定義される。 例えば Person クラスがあり、その属性は firstname・lastname・age だとしよう。Person クラスの2つのインスタンスがあり、それらが同姓同名同年齢だったとしても、その属性が一致しているからといって同一の人であるとは言えない。なので Person クラスのインスタン

    Rails における値オブジェクトと ActiveRecord の composed_of - Qiita
  • Ruby on Rails: アクションにルーティングされる時に準備される環境・変数・メソッドのよく使うもの一覧 - #tech

    Ruby on Rails では、コントローラーのアクションが実行される前に、いくつかの変数等を準備しています。このうち、ユーザーが利用できる代表的なものをいくつか列挙します。 action_name 実行中のアクション名称を保持しています。 例:action_name => "index" cookies リクエストに関連づけられているクッキーを保持しています。 例:cookies => #>> session セッション 例:session => {"session_id"=>"24adeaebd6b8 ... } params リクエストパラメータを保持するオブジェクト。 例:params => {"controller"=>"articles", "action"=>"index"} request (リクエスト情報を保持するオブジェクト) method リクエストされた HTTP

    Ruby on Rails: アクションにルーティングされる時に準備される環境・変数・メソッドのよく使うもの一覧 - #tech
  • railsのrenderとredirect_toの違い - Qiita

    よく分かってない人を3人程見かけたため、改めて初心者向けにrailsのrenderとredirect_toの違いをまとめてみます。 そもそもMVCのどの部分? Controller(の特定のAction)が特定のViewを呼びだす部分です。 (部分テンプレートを使用したい場合、View内でrenderを使用することもありますが、今回は割愛します。) renderとは Action内で、呼び出すViewを指定するメソッド。そのAction内で@〜〜(インスタンス変数)として格納されたものは、Viewからrubyの構文で呼び出せます。 呼び出すViewの形式は、RHTML形式です。(RHTML形式は、普通のfoo.htmlや、hogehoge.html.erb等のruby構文が実行できる形式のHTMLのこと) redirect_toとは HTTPリクエストをサーバーに送り、ユーザーはそこから返

    railsのrenderとredirect_toの違い - Qiita
  • Ruby on Rails 5.1とLaravel 5.5の比較チートシート - Qiita

    この記事はエイチームブライズアドベントカレンダー5日目の記事です。 はじめに 最近Ruby on Rails 5.1(Ruby)とLaravel 5.5(PHP)を触る機会があった為、ざっくりとしたコマンドや言語仕様を比較します。(qiita初投稿です) Railsは使えるけどLaravelが気になる、もしくはその逆の方向けです。 筆者はRailsLaravelも初心者の為、この記事ではそれぞれのメリット・デメリットのような比較はしません(できません)。 一部、Symfony1.4(PHP)という化石のようなフレームワークも一緒に掲載しているのは個人的な事情によるものです コマンド比較 似た用途のコマンドを並べています。 厳密に挙動が一致しない場合もあります。 依存パッケージ Rails 5.1 Laravel 5.5

    Ruby on Rails 5.1とLaravel 5.5の比較チートシート - Qiita