SIerからWebエンジニアに転職してみて思ったこと

まず強調して言いたいのが、エンジニア歴1年のクソ雑魚エンジニアが必死に頑張っているという前提で見てくださると幸いです。 前職のSIerから某Webサービス会社に転職してみて思ったこと、何が違うのか、今の自分の課題、個人としての今後の目標をこの記事…

deviseでのUser登録画面を他のテンプレートで使いたい時

$ rake routes user_registration POST / devise/registrations#create #ここがuser登録のパス new_user_registration GET /sign_up(.:format) devise/registrations#new edit_user_registration GET /profile(.:format) devise/registrations#edit <%= form…

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (38)

mysqlにアクセスできないエラーが出てハマったのでメモ $ rails db ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (38) $ sudo mysql.server start Starting MySQL . ERROR! The server quit without updating…

カラムをinteger型に変えたところPG::DatatypeMismatch: ERRORが出た

$ rake db:migrateしたら以下のエラーが出ました PG::DatatypeMismatch: ERROR: column "hoge" cannot be cast automatically to type integer HINT: You might need to specify "USING hoge::integer". class ChangeTagInTask < ActiveRecord::Migration de…

Postgres 勉強メモ

構造1-ファイル群- <PGDATA> -PG_VERSION …PostgreSQLのバージョンを示したファイル -base …各データベースのデータ本体用のディレクトリ -global …データベースクラスタ共通用のディレクトリ -pg_clog …コミットログ格納用のディレクトリ -pg_hba.conf …HostBase認</pgdata>…

便利なunixコマンドまとめ

オライリーの入門unix を読んでみて、便利と思ったコマンドのメモ。 $ ls -a ファイルの一覧( aオプションで隠しフォルダも表示) .DS_Store .ssh .Trash .subversion .atom Applications .bash_history Desktop .bash_profile $ ls -al ( lオプションを追…

javascriptの第一歩

今までrailsで写経したjsは使ったことあるのですが、昨日初めて自分で0からjs書いたので備忘録。 今回はviewに直書きしました イメージはフォームに西暦を入れて異なるフォームに移った時に現在の西暦からフォームに書いた西暦の引き算イベントが発生するも…

クローラー memo

ウェブサービスを作るにあたり、どっかからデータを引っ張ってきてそれを反映させたいときにはクローリングを作ることで開発が劇的に効率化する。ただし、むやみにデータを引っ張ってくるのはアウトなので、デリケートに使わなければいけない。 参考書は Rub…

2つのカスタムバリデーターを1つのメソッド内で処理する方法

カスタムバリデーターは独自のバリデーションを作れるものです。 今まで一つのバリデータを作るたびに1ファイル作成してたのですが、大変非効率だと思っていた所先輩が教えてくれたので共有します。 モデルは銀行口座の管理を行うものです。bank_codeは銀行…

rake task の作り方, submoduleについて、バルクインサート(activerecord-import)の使用法 

Rake とは? RakeはRuby-Makeの略で、Rubyで何かを作ったり、定型的な処理をしたいときに役立ってくれるツール。 自分でWebサイトを作っているとして、いつもページを更新するたびにやらないといけない、定型的な処理があるとする。 この類の手作業は、Rubyを…

railsでgithubログインを実装する

githubにapplicationを追加する (githubにアクセス-> settings -> Oauth applications-> developer applicationのタブ内のresister new applicationをクリック) application名とurlとAuthorization callback URLにそれぞれ記入し作成(この時にのちに使うclie…

gemのfriendly_idを使ってみた

friendly_idを使うとurlが変わる 例えばrails特有の /projects/1 が/projects/homeworkとかに変わってくれる。 https://rubygems.org/gems/friendly_id/versions/5.1.0 gemfile gem 'friendly_id', '~> 5.1' $ rails g friendly_id $ rails g migration add_…

カスタムMarkdown機能を実装する方法

gemを使って簡単にmarkdown機能を実装していきます。 まずはgemfileに2つのgemを追加 markdownのgem redcarpet | RubyGems.org | your community gem host シンタックスハイライトのgem coderay | RubyGems.org | your community gem host Gemfile gem 'red…

備忘録

プレイスホルダー プレイスホルダー → パラメーターの置き場所。条件式に対して、実行時に任意のパラメーターを引き渡すことができる。 例) scope :active, -> { where('event_date >= ?', Date.today) } 設定されたイベント日を過ぎてしまったら、そのイベ…

google analytics をrailsで使う方法

まず以下のgoogleサイトでトラッキングidを取得。 www.google.com Gemfileに gem 'google-analytics-rails' を追加してbundle install config/environments/production.rbに # トラッキングIDを記す GA.tracker = "UA-xxxxxx-x" view/layout/application.htm…

最近使っていて便利だと思ったtryメソッド

これを初めて使った時率直にすげえーと思いました。今後使うことも多くなるだろうなと思い備忘録として簡単にまとめておきます。 try はメソッドが nil でなければ指定したメソッドを呼び出します。 例えば、よくありがちなuser.email としたいときに user.t…

ActionMailer 使い方

いきなりメール設定をしていく(今回はgmailを扱う前提) config/environments/development.rb config.action_mailer.raise_delivery_errors = true ← メールでエラーが出た時にログを出してくれる host = 'localhost:3000' config.action_mailer.default_url_…

CarrierWave の使い方 by チュートリアル11章

CarrierWaveとは画像をアップロードや画像リサイズができるgemのこと 早速実装方法を解説します。 1. gemfileに gem 'carrierwave' #アップローダー gem 'mini_magick'#リサイズ機能 gem 'fog'#本番環境に画像をアップする を追加。 2. $ bundle install 3. …

最近覚えたものを忘れないように大変雑にまとめていく

#テスト assert系 → 予期した結果 refute系 → 「〜にならないこと」 #FakerでDB上にサンプルUserを生成する 99.times do |n| name = Faker::Name.name email = "example-#{n+1}@rails.jp" password = "password" User.create!( name: name, email: email, …

備忘録  ||=

チュートリアル8章に登場する以下の文法を完全に理解しようという記事です。 def current_user @current_user ||= User.find_by(id: session[:user_id]) end #Userオブジェクトそのものの論理値は常にtrueになることです。そのおかげで、@current_userに何も…

heroku デプロイ 備忘録

2つの自作アプリをherokuデプロイするまでにそれぞれ異なるエラーが続出し手こずったので忘れないようにまとめます。 $ heroku login (herokuにログイン) $ heroku create ex_app12345(ex_app12345という名前で作られます) $ git add -A $ git commit -m …

新人エンジニアがふと振り返ってみた

久しぶりの投稿です。 いつのまにか4月に入り、エンジニアとして転職し早いもので4ヶ月が経ちました。 書き連ねた記事を振り返って少しは成長してるなとしみじみしています。 1年前の4月、新卒で都内の某IT企業の営業として入社し、数カ月で辞めたことは現…

ruby 用語集 長めです。。。

今までは中途半端な知識と気合で個人的なwebサービス作ってましたが、そろそろ気合でできることも頭打ちになりつつあるので用語から見直します>_< そろそろ完璧にならんといけないのでで頭の整理としてここにまとめたいと思います、、、、書籍 楽しいRuby…

第7章 

Railsにはテスト環境 (test)、開発環境 (development)、そして本番環境 (production) の3つの環境がデフォルトで装備されています。Rails consoleのデフォルトの環境はdevelopmentとのこと debuggerを使用することでトラブル解決に役立つ! テクニックの一つ…

6章 Userモデル 正規表現

まとめ、わかったこと データベースにインデックスを追加することで検索効率が向上する!またDBレベルでの一意性を保証するためにも使われる! 正規表現はよくわからないけどのちに必ず覚えるべき強力なもの! テストがつまづきまくる>< 辛抱だ〜

正規表現、オブジェクト、変数、定数

ruby で文字列を処理するときには正規表現(Regular Expression)というものが使われる。 正規表現を使うと 文字列とパターンの一致(マッチング) パターンを使った文字列の切り出し を簡単に行える。 正規表現と文字列のマッチングを行うには /パターン/ =…

第4章 ruby 文法

以前の記事にも4章の文法について記しましたが、今回は未だにあやふやなとこをまとめます。 まずメソッド定義について 「rubyの関数には暗黙の戻り値がある」、関数内で最後に評価された式の値が自動的に返されることの意味。(関数で戻り値を明示的に指定…

3章 

いよいよ私にとっての最大の課題のテストが来たー 避けては通れぬ道。。。。真っ向勝負なり! テストには以下の3つのメリットがあると考えます。by tutorial テストが揃っていれば、機能停止に陥るような回帰バグ (regression: 以前のバグが再発したり機能追…

2章 toyアプリ

いまの自分の課題はconsoleをあまり活用していないところなのでそろそろ意識したいです userとmicropostをアソシエーションした後 $ rails console >> first_user = User.first => #<User id: 1, name: "Michael Hartl", email: "michael@example.org", created_at: "2014-07-21 02:01:31", updated_at: "2014-07-21 02:01:31"> >> first_user.microposts => [#</user>

bootstrap  使い方 レシピ集 まとめ!かなり長いです。。。

最近はクソアプリが形になってきたのですが今の時代、人に使ってもらうためにはデザインの方がむしろ重要なのではと思い、とりあえずbootstrapを学んでいきます。 <a href="http://getbootstrap.com/getting-started/" data-mce-href="http://getbootstrap.com/getting-started/">Getting started · Bootstrap</a>getbootstrap.com

勉強会メモ 

今回もまとまりのない自分のための備忘録ですw rails _4.2.3_ new sample_app (バージョン指定) ↓ モデル作成(単数形!!!!!!!!!!!!!!!!!!) ↓ コントローラー(複数形) ---------------------------------------------------------------…

rails勉強会 メモ 其の1migration、 ルートの見方、

いつの日か忘れましたが下書きがあったので見直せるようにアップしときます! 初歩的な内容です。 最近はdotsを使ってrails勉強会に出席しまくっています!勉強会楽しすぎる!神奈川、東京でおもしろそうなのありましたら随時教えていただきたいです。。。。…

Active record についてまとめ

Active Recordとは、MVCで言うところのM、つまりモデルに相当するものであり、ビジネスデータとビジネスロジックを表すシステムの階層です。Active Recordは、データベースに恒久的に保存される必要のあるビジネスオブジェクトの作成と利用を円滑に行なえる…

4章 ruby 文法

文法、本当に意味わからないつか、すぐに忘れる、やばいあせる焦る焦る!!!!! first_name = "yasai" "#{first_name} tomato" =>yasai tomato と出力 "yasai"という値をfirst_name変数に割り当て、この変数が"#{first_name} tomato"という文字列の中で式…

Tutorial 3章 まとめ

テスト駆動開発 → エラーを徐々に直していきながら改善していく 今回の場合 $ rails generate integration_test static_pages コマンドで static_pages_spec.rbが生成される! ここにテストコードを記述していく! 例 require 'spec_helper' describe "Stati…

Rails TutorialでMVCを徹底的に理解する!!! 

rake routes コマンドをし、prefixの列がpathに関連する。 --------------------------------------------------------------------------------------------------- まずこの図は絶対に理解必須!!!!! by Rails界のすごい人 具体的には、/usersのindex…

チュートリアル 1章まとめ github heroku など

git とはバージョン管理ツールで開発現場においては必要不可欠。プロジェクトのコード履歴を追ったり、誤って削除してしまったファイルを復旧(ロールバック)できたりする!! $ git config --global alias.co checkout (自分でコマンドをカスタマイズでき…

Rubyの夏が来たああああ

初めまして、いきなりですがrailsで躓いたところを備忘録として活用していく予定です。 超絶ビギナーで、凄腕の方からは突っ込みどころ満載なブログになると思いますが何卒よろしくお願いします(>0<) Rails Tutorialに従い環境構築から始めたものの、挫…