元祖若手のプログラミング奮闘記

元祖若手の奮闘記。主にメモ

PHP var_dump 全出し(メモ)

よく見かける記事ですがメモ代わりで

var_dumpって長文省略されんちゃうんだねって
ことで省略されないようにする

<?php
#前略
    $string = "・・ めっちゃ長文 ・・";

    ini_set('xdebug.var_display_max_children', -1);
    ini_set('xdebug.var_display_max_data', -1);
    ini_set('xdebug.var_display_max_depth', -1);
    var_dump($string);
#後略
?>

コントローラー、ヘルパー、ビューにモデル処理を描くんじゃない!

タイトルの通り今回これをやらかしてたので
今日はこれ

当たり前っちゃ当たり前なんだけど
コード書きまくってたら良くやるのもこれ

なんてったって実際そんな書き方してるコードが
あるんだから参考にしちゃうよねw

基本書くのはこちら

app/models/...

気を付けよう!
まず一例でこちら
ヘルパーにモデル処理書いてみたよ。

app/helpers/users_helper.rb

module UsersHelper
  def get_user_names_by_group(group)
    User.where(group: group).pluck(:name)
  end
end

これは突っ込みありまくりコードだけど
気を付けよう実際あったし。

app/controllers/users_controller.rb

  def create
    if request.post?
      @users = set_user_params
      User.transaction do
        @users.each do |user|
          new_user = User.new(name: user[:name])
          raise unless user.save 
        end
      end
    end
    @users = User.all
  end

まぁどんまい!

コードの書き方(命名編)

良くセンスがないと言われ続ける
関数や変数の命名。。

指摘されたことを忘れないよう
メモがわりで。。。
(あくまで一例としてご覧ください!)

・private関数は先頭に _ をつける
※2017/07/17追記
 これ _ つけなくていいって言われた。。
 俺全部直したええ。。

private

def set_param
  ...
end

モデルの関数名は
select_user
よりも
get_user
条件をつけるときは
後ろにbyをつける

app/models/user.rb

def get_user_by_name(name)
  self.where(name: name).first
end

app/assets配下には
複数ファイルがあるなら
ひとつディレクトリを作る

app/assets/javascript/user_editor.js
app/assets/javascript/user_window.js

こういうのね

app/assets/javascript/user/...

こうしましょう