PHP 関数

関数について〜 関数とは処理のこと Rubyでいうメソッドです。 難しくないよ。大変便利!! 関数に関して 関数は前に持ってくる。 $length = strlen($str); 前 後 RUbyのメソッドは後ろだったのでそこが違う! 例) 文字列に対する関数 strlen — ⽂字列の⻑…

PHP学習2日目 反復 条件分岐 連想配列 等

PHP学習2日目になります! 学んだことブログにメモっていきま〜す 反復 while, for ネストがある場合 外側の処理1回目 内側の処理が終わるまで繰り返す 外側の処理2回目 内側の処理が終わるまで繰り返す ・・・・ 外側の処理最後 内側の処理が終わるまで

PHP 変数 配列 他

PHP学習1日目今日学んだことメモ 変数には$ がつく $color1 = "Red"; ;忘れないでね .は連結 文字列と数値も繋ぐことができる AGE:20 ここね 論理値の場合 var_dump関数を使う Andy echo ","; var_dump($student); # => bool(true) // echo $student; # t…

PHP学習1日目

PHP PHP学習1日目です。 メモがてらブログ書きます。 Udemyの基礎だけ学ぶPHPプログラミング講座を受講しています。 ターミナルコマンド mkdir フォルダを作成する mkdir helloword でhellowordというフォルダを作成できる。 historyコマンド ターミナル内で…

Railsチュートリアル14章

Railsチュートリアル14章で大事なとこメモっときます テストコードはRspecで書いています。 フォローとフォロワーの関係ややこしいのでまとめる。 userモデル has_many :active_relationships, class_name: "Relationship", foreign_key: "follower_id", dep…

Railsチュートリアル13章 

Railsチュートリアル13章で大事なとこメモっておく テストコードはRspecで書いています。 ・複合キーインデックス micropostのマイグレーションファイル class CreateMicroposts < ActiveRecord::Migration[6.1] def change create_table :microposts do |t|…

Railsチュートリアル12章 パスワード再設定

Railsチュートリアル12章で大事だと思ったことをメモします。 テストコードはRspecで書いています。 パスワード再設定 ログインする際、パスワードを忘れてしまった場合にパスワード再設定をする。 userのedit,updateでパスワードを変えるのは違う。それはパ…

Railsチュートリアル11章 アカウント有効化

Railsチュートリアル11章について大事だと思ったことメモっていきます。 テストコードはRspecで書いてます。 アカウントの有効化とは・・・ ユーザーを新規登録する際にメールを送って、メール内に貼ってあるリンクをクリックすることで、初めてログインでき…

Railsチュートリアル10章 

Railsチュートリアル10章について大事だと思ったことをメモっときます。 テストコードはRspecを使っています。 フレンドリーフォワーティング ログイン前にそのページに行こうとしていたら、ログインした後は行こうとしたページになっていること。 Sessionを…

Railsチュートリアル9章 クッキー(remember_me)

Railsチュートリアル9章で大事なとこをメモっていきます。 テストコードはRspecを使っています。 ランダムトークン生成 user.rb def User.new_token SecureRandom.urlsafe_base64 ここ!!これで22文字のランダムな文字列を作っている。 end user.rb def rem…

Railsチュートリアル8章 セッション

Railsチュートリアル8章について大事なとこメモっときます! テストコードはRspecで書いてます。 Sessionとは・・・ ログイン情報を保持する。 sessionはブラウザを閉じると自動で終了する。 Google Chromeの場合は、ブラウザを閉じてもログイン情報保持され…

Railsチュートリアル7章

Railsチュートリアル7章大事なところメモっときます テストコードはRspecで書いています。 画像 Gravatar Gravatarは無料のサービスで、プロフィール写真をアップロードして、指定したメールアドレスと関連付けれる。 users/show.html.erb <% provide(:title…

Railsチュートリアル6章

Railsチュートリアル6章について大事だと思ったことをまとめます! テストコードはRspecを利用して書いております。 ・特定の属性のみ更新したい場合はupdate_attributeを使う user = User.new(name: "The Dude", email: "dude@abides.org") user.update_att…

Railsチュートリアル 5章 

Railsチュートリアル5章についてまとめる。 Bootstrap Twitterが作成したフレームワーク。 Webデザインとユーザーインターフェイス要素を簡単に導入できるCSSフレームワークである。 gemを入れる必要がある。 gem 'bootstrap-sass', '3.4.1' @importを使って…

Railsチュートリアル 3章 静的なページ

Railsチュートリアル3章をやって大事だと思ったことメモしていきます! 尚、テストコードはRspecを利用して書きました。 静的ページのルーティング、コントローラー ルーティング Rails.application.routes.draw do root 'static_pages#home' get 'static_pa…

Railsチュートリアル14章 フォローとフォロワー

14章 フォローとフォロワーの関係がややこしいのでまとめる ユーザーモデル内 class User < ApplicationRecord has_many :microposts, dependent: :destroy has_many :active_relationships, class_name: "Relationship", foreign_key: "follower_id", depen…

Rails チュートリアル13章

今回は13章をやっていく中で必要だと思ったところをメモしていきます。 ・複合キーインデックス micropostのマイグレーションファイル class CreateMicroposts < ActiveRecord::Migration[6.0] def change create_table :microposts do |t| t.text :content …

Railsチュートリアル12章 パスワード再設定

Password Reset ログインする際、パスワードを忘れてしまった場合にパスワード再設定をする。 userのedit,updateでパスワードを変えるのは違う。それはパスワードが分かっていててログインできてる状態。 今回はパスワードが分からなくて、ログインできない…

Railsチュートリアル11章 アカウントの有効化

アカウントの有効化 ユーザーを新規登録する際にメールを送って、メール内に貼ってあるリンクをクリックすることで、初めてログインできるようになる。 全体の流れ ユーザーがsave出来たら、before_createでactivation_tokenを作り、それをdigest化してハッ…

Railsチュートリアル9章 クッキー(remember me)

クッキー 第9章で学んだクッキーについてまとめる。 テストコードは省略する。 まずはmigration追加 $ rails generate migration add_remember_digest_to_users remember_digest:string class AddRememberDigestToUsers < ActiveRecord::Migration[6.0] def…

Railsチュートリアル8章 セッション

セッション セッションについてまとめる。テストコードは省略する。 コントローラー作成rails generate controller Sessions newここでnewを使っているのはコントローラーと同時にnewのビューを作りたいため。他のアクションはビュー必要ないので後で定義 ル…

環境変数の置き方

環境変数の置き方 開発(ローカル)環境 環境変数入力画面にいく。 % vim ~/.zshrc 環境変数を入力する iを押す。終わったらescを押して:wq 例)カードの場合 export PAYJP_SECRET_KEY='sk_test_************' export PAYJP_PUBLIC_KEY='pk_test_***********…

デプロイ(heroku)

Herokuにデプロイする手順 heroku create アプリケーション名 % git config --list | grep heroku fatal: not in a git directory以外が表示であればおk % heroku addons:add cleardb % heroku_cleardb=`heroku config:get CLEARDB_DATABASE_URL` % heroku c…

画像投稿 active storage導入

画像を投稿する active storageを導入する手順 % brew install imagemagick Gemfile gem 'mini_magick' gem 'image_processing', '~> 1.2' % bundle install % rails s % rails active_storage:install % rails db:migrate

サポートモジュール(テストコードをまとめる)

サポートモジュール テストコード内にて同じ記述を避けるために1つにまとめる。 supportファイルを作成し、その中にこのようなファイルを作る。 spec/support/sign_in_support.rb 1 2 3 4 5 6 7 8 9 module SignInSupport def sign_in(user) visit new_user_…

テストコード( ターミナルコマンド)

まずrspecを導入する。 Gemfile gem 'rspec-rails', '~> 4.0.0' % bundle install % rails g rspec:install rspec導入完了。 結合テストコードのsystem specはcapybaraで既にgemに入っている。 .rspec --format documentation これを追加することでテストコ…

検索機能

検索機能 ビュー <%= form_with(url: search_tweets_path, local: true, method: :get, class: "search-form") do |form| %> <%= form.text_field :keyword, placeholder: "投稿を検索する", class: "search-input" %> <%= form.submit "検索", class: "sear…

部分テンプレート

部分テンプレート 複数のページにて、同じコードを書く場合、部分テンプレートを用いることによってコードを1つのページで済ます。 部分テンプレートのファイル (例)_tweet.html.erbに記述する。 _を最初に持って来る。 使い方 部分テンプレートに書いた内…

Orderメソッド

orderメソッド 順番に並べる。並び方を決めるメソッド インスタンス = モデル名.order("並び替えの基準となるカラム名 並び順") 並び順について ASC(昇順): 古いものから新しい順番。古いものが上で新しいものが下になる。 *ABCじゃないので注意 DESC(降順)…

N+1問題(アソシエーション)

N+1問題とは アソシエーションでtweetとuserが結びついているとする。 tweetの情報をとって来る場合、userの情報も探して来る必要がある。そのためtweetの情報を持って来るとは別でuserはuserでtweetに紐付いているuser情報を持って来る必要があり、データベ…