LoginSignup
0
0

エンドレスメソッドについて

Last updated at Posted at 2024-06-22

今回は元有名企業で開発をしていた方が御用達しているというエンドレスメソッドについて調べたのでその使い方をメモ程度にまとめました。

エンドレスメソッドとは

『end を書かずにメソッドを定義する』というそのままの意味のメソッドになります。
これにより def set_user = @user = User.find(params[:id]) という形でメソッドを定義する事ができるようになります。

基本的には1行でかけるメソッドの時に多様するようです。

わかりやすいイメージ

# 今までは def ~ end でメソッドを定義していた
  def set_user
    @user = User.find params[:id]
  end

# これが def だけで定義できるようになる
def set_user = @user = User.find(params[:id])

実際のコード

class ExampleController < ApplicationController
  def show
    sum = square(1)
    puts sum
    render plain: "Check logs for the result"
  end

  private

  def square(x) = x + x
end

結果

irb(main):005> puts response.body
The sum is 100
=> nil

※puts メソッドは標準出力に文字列を表示するだけであり、表示が成功した場合の戻り値は常に nil です。

結構色々な場面で使用できそうなので、個人開発の時にでも取り入れてみようと思います!

参考文献:
https://secret-garden.hatenablog.com/entry/2020/10/03/180130

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0