インクリボンとタイプライター

セーブがしたいんです…

erb2slimを実行時にno implicit conversionエラーが出る

やりたいこと index.html.erbをslimに変換したい。 gem gem 'slim-rails' gem 'html2slim' コマンド erb2slim エラー文 TypeError: no implicit conversion of IO into String Use --trace for backtrace. IOを文字列に変換することはできない、という意味の…

ruby silver 勉強記録 (6日目)

・日付 %Y :4桁の西暦 %y:2桁の西暦 %m:月 %d:日 %H:時刻 %M:分 %S:秒 ・ハッシュ インスタンスメソッド clear : ハッシュを空にする。 fetch : キーに対応する値を取り出し、キーがなければ指定の値を返す。 invert : キーを値に、値をキ…

20170608 ruby メモ

obj.is_a?(klass) obj.kind_of?(klass) is_a?メソッドまたはkind_of?メソッドは、レシーバのオブジェクトが引数klassクラスのインスタンスであればtrue、そうでなければfalseを返します。 instance_of?メソッドとは違い、レシーバが属するクラスだけでなく、…

ruby silver 勉強記録 (7日目)

・?A 「?」に一文字足すと、その文字自身を一文字だけ含む文字列オブジェクトを返す。 p ?A # => "A" ・配列 位置と数 array[index, length] 引数に整数2つ(index、length)を指定したときは、indexの位置からlength個の要素を取り出して、配列で返します…

ruby silver 勉強記録 (6日目)

・日付 %Y :4桁の西暦 %y:2桁の西暦 %m:月 %d:日 %H:時刻 %M:分 %S:秒 ・ハッシュ インスタンスメソッド clear : ハッシュを空にする。 fetch : キーに対応する値を取り出し、キーがなければ指定の値を返す。 invert : キーを値に、値をキ…

ruby silver 勉強記録 (5日目)

・IOクラス IOクラスとはプログラムの外部とデータのやりとりをするための機能として入力(Input)と出力(Output)を提供するのが、IOクラスです | たのしいRuby P339 qiita.com ・.read .read(num)で対象の何文字目かを読み込む ・.seek ファイルポインタを移…

railsとswiftを連携させる練習

参考 github.com 詰まり 以下のコードをどこに挟むのかがわからず。 TweetsViewController.swiftに挟むと以下のエラー。 エラーメッセージ Method does not override any method from its super class override func numberOfSectionsInTableView(tableView:…

ruby silver 勉強記録 (4日目)

・学習内容 1、find_allとselect 配列の検索。 enum.find_all {|item| block } enum.select {|item| block } find_allメソッドは、条件に合う要素を探して集めます。ブロック引数itemに要素を入れながらブロックを繰り返し、ブロックの戻り値が真になったと…

ruby silver 勉強記録 (3日目)

毎日やるためにはルーティーンをしっかり組まないといかんと思った。 本当にすぐにさぼってしまう。 学習内容 ・定数のオーバーライド 警告は出るができる。 ・演算子の意味 ..と& 1、範囲式(..) 1..20で1から20 2、論理積演算子。または類似の演算を…

ruby silver 勉強記録 (2日目)

使用教材 Ruby技術者認定試験合格教本 Silver/Gold対応 Ruby公式資格教科書 | 増井 雄一郎, 小川 伸一郎, 株式会社 日立ソリューションズ 牧 俊男, 一般財団法人Rubyアソシエーション 前田 修吾, CTCテクノロジー株式会社 |本 | 通販 | Amazon 学習内容 組み…

ruby silver 勉強記録 (1日目)

勉強方法 過去問をとく => わからないところは解説を読んで復習する 心がけること 終わった問題でも試験日まで何回も解く 目標 過去問1日10〜20問。 本日の記録 ・マジックコメントの書き方 coding: エンコーディング名 ・メソッド内と外では変数名が…

deviseのrootをregistrations#newにすると、undefined method `validatable?' for nil:NilClassになる

deviseのrootをregistrations#newにすると、undefined method `validatable?‘ for nil:NilClassになる 原因分析 registrations#newにいきなりアクセスすると、レシーバーであるdevise_mappingが空なので、メソッドvalidatable?が機能しないのでエラーになる…

js学習メモ 変数について

var message = $textField.val(), $fileField.val(); 変数に2つの値は入らない。,以降は読み込まない。なので、新しい変数を用意する。

JS学習 文字が入力されるたびに検索できるようにする(インクリメンタルサーチ)

インクリメンタルサーチ学習に向けて 文字が入力されるたびに検索できるようにする ・main.js // 入力されたものと比較される値の配列 var fruits = ['apple', 'apricot', 'avocado', 'blueberry', 'cherry', 'coconut', 'cranberry', 'dragonfruit', 'duria…

JS学習 複数のワードで検索できるようにする

インクリメンタルサーチの学習に向けて 複数のワードで検索できるようにする ・main.js // 入力されたものと比較される値の配列 var fruits = ['apple', 'apricot', 'avocado', 'blueberry', 'cherry', 'coconut', 'cranberry', 'dragonfruit', 'durian', 'g…

JS学習 入力された値を前方一致で検索する

JS

インクリメンタルサーチの学習に向けて 入力された値を前方一致で検索する ・index.html <html> <head> <meta charset="utf-8" /> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script> <script src="main.js"></script> </meta></head></html>

レビューの反省 2017年1月10日

・jQueryオブジェクトを格納する変数名には先頭に$を付けましょう。 var $textField = $('.js-form__text-area') ・開発用のconsole.logは消しましょう。

rails ajaxを使って非同期通信をするための学習メモ

現在、railsでチャットアプリを作っている。チャットメッセージの送信、グループの追加機能にajaxを使った非同期通信を使いたい。 しかし、いろいろ調べてみたが全然わからない。ほとんどすべてがわからない。 なので、わからない部分を整理するためにここに…

RSpec 外部キーを使っているモデルをテストする際の手順(factory_girl使用)

やり方まとめ ・外部キーを使っている場合、外部キーの先のレコードが存在しないと、テストで弾かれる。だから必要なレコードを定義する。 具体的に messageテーブルに外部キーでuserとgroupを設定しているとする。 「messageが投稿できるかどうか」というテ…

Rspec コードメモ

・通常の書き方(factory-girlなし) user_spec.rb require 'rails_helper' describe User do describe '#create' do it "is invalid without a email" do #ここはテストの条件式。今回の条件はemailがないと無効になるか user = User.new(nickname: "abe", …

rspec エラーまとめ

・エラー文 Web Console is activated in the test environment, which is usually a mistake. To ensure it's only activated in development mode, move it to the development group of your Gemfile: gem 'web-console', group: :development If you sti…

レビュー反省 2016 12 20

・permitでuser_id、group_idを許すのか、mergeでuser_id、group_idを加えるのかどちらかにしましょう。 params.require(:message).permit(:message, :user_id, :group_id).merge(user_id: current_user.id, group_id: params[:group_id]) ・elseの後、改行…

レビューの反省 2016 12 19

・@groupだとgroupのインスタンスが入っている様に見えてしまうので変数名を変えましょう def create @message = Message.new(create_params) #入力された値を保存する @group = params[:group_id] #リダイレクトをするために、現在のページのgroup_idを取得…

rails ルーティングをネストさせる方法

・やり方 resources :親 do resources :子end 参考 railsguides.jp

レビュー反省 2016 12 18

・シンボル型での記述をメインで使うこと render 'edit' より、render :editなどの方が見やすい。 ・hamlでは式展開ではなく、rubyタグを使う。 %p #{current_user.name}ではなく、%p= current_user.nameで書く。 ・レビューを受けた際は同じような記述が他…

rails 部分テンプレートの使い方 まとめ

1、部分テンプレートの作り方 _ファイル名.html.haml(or erb) これを使いたいコントローラーが管理するviewフォルダにいれる。 2、部分テンプレートの呼び出し方 = render partial: "1で作った「ファイル名」の部分" 部分テンプレートの内容を繰り返し表…

チャットアプリケーション制作記録1 動作考察

class GroupsController < ApplicationController before_action :set_group, only:[:show, :edit, :update] def index @groups = current_user.groups end def new @group = Group.new end def create @group = Group.new(group_params) if @group.save red…

レビュー反省 2016年12月16日

・デバック用のツールはdevelopment, test環境だけにしましょう。 デバック用のgem gem 'pry-rails' # rails console(もしくは、rails c)でirbの代わりにpryを使われるgem 'pry-doc' # methodを表示gem 'pry-byebug' # デバッグを実施(Ruby 2.0以降で動作す…

テーブルから不要なカラムを削除する

ターミナルにて $ rails g migration Removeカラム名From削除元テーブル名 削除するカラム名

ページに表示したい情報をshowアクションに定義する

ページに表示したい情報をshowアクションに定義する やりたいこと 1、ログインしているユーザーのnicknameを表示する 2、ログインしているユーザーの投稿を表示する アソシエーションなしvar class UsersController < ApplicationController def show @nic…

renderでページを再表示させた時にフラッシュメッセージを出す方法

def create @group = Group.create(group_params) if @group.save redirect_to root_path, notice: 'グループが作成されました' else flash.now[:alert] = "グループ名を入力してください" render :action => :new end end flash.now[:]で表示するメッセージ…

レビューの反省 2016年12月6日

・不要なファイルはコミットしないようにしましょう! また、プルリクはなんのためにその機能を作ろうとしているのか、を明確にしてください。 例)group機能を作りたい! =>Groupの作成機能を作った。 今のようにgroupのmodelとcontrollerを作っただけより…

deviseのフラッシュメッセージの日本語化

qiita.com これをやった後にサーバーを再起動させること!

rails5 deviseでのサインアップ等の処理の後にフラッシュメッセージを表示する

application.html.haml !!! %html %head %meta{:content => "text/html; charset=UTF-8", "http-equiv" => "Content-Type"}/ %title ChatSpaceV3 = csrf_meta_tags = stylesheet_link_tag 'application', media: 'all', 'data-turbolinks-track': 'reload' =…

deviseでuser_nameを登録、更新するやり方

application_controller.erb class ApplicationController < ActionController::Base before_action :configure_permitted_parameters, if: :devise_controller? protect_from_forgery with: :exception private def configure_permitted_parameters devise_…

レビューの反省 2016年12月5日

・仮として作った部分も消しておきましょう!プルリクエストは、本番環境の機能を想定して作っていくものです。本番の環境で使わない部分の実装をプルリクエストで出すことはよくありません。なので、ご自身で試されたり、仮のものとして書いたコードは全て…

レビューの反省 2016年12月1日

・もらったコメントに関しては全てに返信を書くことで、もれなく修正できる ・CSSの色コードを直に書き込んでいては、どんな色なのか分かりづらい。また、再利用する際もやりづらいので、使用回数に限らず変数にしてしまった方がいい。 ・CSSのコードにて16…

レビューの反省 2016年11月30日

・githubにて、使っていないファイルはコミットしない。 手を加えてないファイルにはチェックを外してコミットを出す。 ・SCSSの色の指定方法について 1、複数回使う色は変数にしておくべし いい感じの名前の付け方がわからないが、まとめる理由はわかった…

marginやpaddingで左右の値が同じ場合の書き方について

margin: 上, 左右, 下; paddingも同様 参考 kouza.hamuinu.com

scssにおける変数の宣言

$変数名: 値; ・参考 blogs.adobe.com ・使用するにあたって colorのプロパティにwhiteと直に書き込んでいたが、これでは保守がしづらいらしい。よく使う色は変数にしておくべきなのだそうだ。

プログラミング学習 2ヶ月目 記録

9月の末から今日まで毎日プログラミングをやっている。 私は頭はいい方ではないし、それを補う根性も持っていない。また、四六時中プログラミングがしたくなるくらいに興味を持っているということもない。 こんな私はネットの記事で言われているようなプロ…

ユーザーの投稿一覧の作り方

1、user_controllerのshowアクションにて、入力されたuser_idに対応する投稿情報を取得する。 ・user_controller def show @user = User.find(params[:id]) @notes = Note.where(user_id: @user.id) end →動きについて 1、入力されたid番号に対応したデー…

ユーザーと投稿の結びつけ

・やり方 1、users_tableとnotes_tableを関連付けるカラムをnotes_tableに作成する ・users_table ユーザー情報のテーブル ・notes_table 投稿情報のテーブル notes_tableにuser_idカラムを作成する。これはusers_tableのidカラムと対応する。 2、マイグレ…

validationのやり方

・validation 1、役割 カラムごとに条件をつけて、条件にあったデータのみデータベースに保存できるようにする。 2、記述場所 モデル 3、記述内容 validates :カラム名, 条件 4、条件の種類 ・presence: true 未入力状態を保存させない。 ・uniqueness: …

scaffoldのやり方

1、scaffoldに対応したモデルを作る コマンド $ rails g scaffold モデル名 カラム名:データ型 2、データベースに反映させる コマンド $ rake db:migrate

プログラミング学習の心得

プログラミングを勉強し始めて約1ヶ月がたった。 今はとあるスクールに通っているが、周りの受講生に比べてはるかに学習ペースが遅い。まぁ、そもそもスクールのカリキュラムが難しくてProgateで該当分野の学習をしていたから、カリキュラム自体が周りより…

プログラミング学習記録 Haml,Scssによるマークアップ

今月の頭にHTMLとCSSを初めて触ったと思ったら、もうその発展形のHAMLとSCSSを使わなければならない状況となった。HamlとSCSSを理解するのは結構大変だったので、忘れても思い出せるように最低限の使い方のメモを残しておく。 ○Haml ・クラスの書き方は .ク…

学習記録 javascript 合計金額比較プログラム

var items = [ { name: 'じゃがいも', price: 50, count: 3 }, { name: 'にんじん', price: 60, count: 1 }, { name: '豚肉', price: 200, count: 1 }, { name: '玉ねぎ', price: 50, count: 2 }]; // targetPriceより小計の高額な商品を出力したい function…

学習記録 Ruby じゃんけんプログラム

def match puts "最初はグー、じゃんけん...." puts "グー[0]\nチョキ[1]\nパー[2]" player = gets.to_i enemy = rand(3) #playerは入力に対応した番号に、enemyは0〜2のランダムな番号に hands = ["グー", "チョキ", "パー"] #手を配列に入れる。配列名 =…

ruby on rails 学習メモ

○ruby on rails を学習する上でのポイント ・どういう流れの作業なのかを意識する まず何をして次に何をするのか、なぜそういう順番でやるのかを意識しながら学習する。 ・それぞれの作業がどことリンクしているのかを意識する 複数のファイルを同時並行的に…