読者です 読者をやめる 読者になる 読者になる

感謝のプログラミング 10000時間

たどり着いた結果(さき)は、感謝でした。

Railsでページネーションを実現する

ページネーションとは、ページ割りという意味の英単語です。 長い文章とか、長い項目を複数のページに分割して、各ページヘのリンクを並べてアクセスしやすくします。よく、[1][2][3]...みたいに、一覧の下に数字があって、クリックすると次が見れるかと思い…

RailsでDBから取り出した値の並び順を処理する

Railsで並び順を処理するために使うのはorderというメソッドです。 以下のように書きます。 変数 = モデルクラス.where(・・・).order(並び順の指定) whereメソッドのあとにorderメソッドの呼び出しが続けて書かれていますが、メソッドをいくつもつなげて書…

Railsをまとめて復習するメモ

Railsの勉強をしていたんですが、色々と他のことをやっていたら勉強を中断してしまったので、最初からまとめて復習してみます。・プロジェクトを作成する rails new sample・コントローラーを作成する rails generate controller samples index show hogeコ…

rails serverでポートを指定して起動する

rails serverはデフォルトでは3000で起動しますが、このポートはオプションによって変更することができます。 「-p」オプションで使用するポートをしていすれば、そのポートで起動させることができます。以下のようになります。 >rails server -p 88 => Boot…

Rails4で「ActionController::InvalidAuthenticityToken」というエラーが出た

Rails3では出なかったのに、Rails4で同じようなコードを書いたら ActionController::InvalidAuthenticityToken in SamplesController#index というエラーが出て、Viewが表示されなかった。Viewのコードでは、普通のHTMLのformタグを書いていたんだけど、これ…

Railsのビューごとにtitleを設定する

シンプルなやり方です。 もっといいやり方があるかもしれないけれど・・・ app/views/layouts/application.html.erbを編集します。 head要素のtitleの部分を変えました。 <html> <head> <title><%= @title %></title> <%= stylesheet_link_tag "application", media: "all", "data-turb</head></html>…

フレームワークって何?

「Ruby on Rails 4 アプリケーションプログラミング」という本を読んで、フレームワークの説明が面白かったので、自分の言葉を使ってまとめてみます。 フレームワークとは、問題を一般化し、定石をまとめた枠組みのことです。 そこには先人の知恵が詰め込ま…

Railsであいまい検索(LIKE)やAND検索を行う

あいまい検索とは、「用語の一部の一致」を探して、一部でもマッチングするものを抽出する検索のこと。 「鈴木」で検索したら、「鈴木美保」、「鈴木亜美」、「鈴木えみ」を検索するようなイメージですね。Railsのあいまい検索の書き方は、以下の様な感じで…

RailsでJavaScriptを使ってみる。レコードの更新と削除を行う。

RailsでJavaScriptを新しく作りたいときは、「/myapp/app/assets/javascripts」のように、assets/javascripts以下にhogehoge.jsという新しいjsファイルを作ります。 ここにJavaScriptファイルを作れば、自動的に読み込まれる仕組みになっているようです(以下…

findメソッドを使って特定のidのレコードを取り出す

前回の記事の続きになります。データはあらかじめテーブルに格納されているものとします。IDなど、特定のパラメータを使ってレコードを検索するためのメソッドは、findメソッドです。 これはモデルのインスタンスがstaticに持っているメソッドです。コントロ…

POSTされた値からレコードを新規に作成、テーブルに格納する。

まずは基礎知識を順番に見ていって、その後に、実際に使ってみます。 テーブルから全レコードを取り出すには、allというメソッドを使います。 変数 = モデルクラス.all このallを使えば、すべてのレコード情報が取得できる。モデルクラスでレコードを新規に…

モデルを作って、データベースの値を表示してみる。

Railsの勉強メモ。 database.ymlで使われている設定項目 config以下に、database.ymlというファイルがある。 これは、Railsで使うデータベースに関する設定をまとめたファイルである。 設定項目は以下のような意味がある。・adapter:データベースの接続に使…

form_tagを使って送信フォームを作ってみる。

Railsのメモ。 View Viewのソースは以下のように書く。 form_tagメソッドは、前提となるモデルが存在しない時、つまり、モデルの編集目的でないときに、汎用的なフォームを生成するために利用する。 <h2>Form Example</h2> <%= @msg %> <hr/> <%=form_tag({ :controller =></hr/>…

ファイルをアップロードしてみる

Railsで写真をアップロードしてみましょう。 ファイルを選択して、「アップロード」というボタンを押せば、ファイルをサーバ上にアップロードできます。 ビューは以下のように書きます。 <%= form_tag 'samples/index', :multipart =>true do %> <label>保存したい</label>…

コントローラを使ってみよう!

まずは、コントローラって何?ってところから始めます。 コントローラとは、全体の制御を受け持つものです。 このURLにアクセスしたらModelを呼び出してこのデータを取り出して、このViewを使って表示する、というような、全体の流れを制御(=Control)する役…

データ取得のメソッドのメモ(1)

Railsの勉強しました。 検索 ・find find(keys) keys:主キー値例) def find @persons = Person.find([1,3,5]) render 'welcome/list' end ・find_by_xxxx find_all_by_XXXXX(value) find_by_XXXXX(value) XXXXX:フィールド名 value:検索値find_by_xxxxメソッ…

rake db:migrate

●モデルに関連づいたフォームを定義する 特定のモデルを編集するためのフォームを作成するためのビューヘルパーの構文は以下のとおり。 form_for(model) do |f| ・・・フォームの本体・・・ end 実際はこんな感じで書かれる。 <%= form_for(@person) do |f| …

モデル/テンプレート/コントローラをまとめて作成するScaffoldingと、Rails 4でturbolinksオフ手順

Scaffolding(スキャフォールディング)機能とは、手軽にCRUD機能を持ったアプリケーションを構築するための機能のこと。 Scaffoldingとは「足場」という意味で、アプリケーションの骨格を作成するための機能を指す。■railsコマンド rails generate scaffold n…

データベースにデータを投入して表示してみる

railsでデータベースを使ってみる まずは、モデルとマイグレーションファイルを作成する railsdemo>rails generate model friend name:string age:integer interest:string次に、マイグレーションを実行する。マイグレーションとは、テーブルレイアウトを作…

database.ymlのまとめ

O/Rマッパーは英語でいうと、Object/Relationalマッパーという。 データベースのレコードとオブジェクトを結びつけるのに多くのコードを書く必要があったのだが、それを解消し、ObjectとRelational Databaseをマッピングさせる役割を果たす。Active Record経…

Rails勉強メモ(3)テンプレートファイルを使ってみる

テンプレートファイル テンプレートファイルは/app/viewsフォルダ配下に以下のルールに従った名前で保存する。 「コントローラ名/アクション名.html.erb」たとえば、/controllers/hello_controller.rbというコントローラがあり、そのメソッドが以下のように…

Rails勉強メモ(2) コントローラを生成する

・railsでアプリケーションを作成する rails new application_name [options]例) rails new samplerails・Railsでコントローラクラスを生成する rails generate controller name [options]例) rails generate controller hello・rails generateで作成したフ…

Railsの勉強メモ

ルーティングとは、リクエストURLに応じて処理の受け渡し先を決定するしくみのこと。 ルーティング設定は/config/routes.rbのApplication.routes.draw のブロック内に記述する。 ■トップページへのルートを定義する方法ウェブサイトのrootのURLとして、ある…

rails generate controllerを使ってみる

コントローラは、Railsアプリ全体の基点であり、制御役ともいうべきものだ。 個々のリクエストを受け取り、必要に応じてビジネスロジック(Model)を呼び出し、その結果を出力(View)に引き渡す。コントローラクラスを作成するコマンドは以下のとおり。 rails g…

Railsで「The provided regular expression is using multiline anchors (^ or $)」みたいなエラーが出た時。

列車本の写経をしてvalidatesを書いているときに、以下のようなエラーが出た。 The provided regular expression is using multiline anchors (^ or $), which may present a security risk. Did you mean to use \A and \z, or forgot to add the :multilin…

ただのメモ

Scaffoldingとは Scaffoldingとは、足場という意味で、基本機能をあらかじめ実装したアプリケーションの骨格を作成するための機能をいう。 とりあえず動くものを作りたいとか、Railsによる基本的なCRUD実装を理解したいというときに便利なようだ。 rails gen…

Railsでモデルを作成してみる。

モデルとは モデルとは、データベースや外部サービスへのアクセスなど、データの管理/操作を担当するコンポーネントのことです。 なるほど。DAOとかBeanとか、Javaでは見てきたけれど、それと関係あるかな。 読み進める。O/Rマッパー(Object/Relational Mapp…

Railsでコントローラからビューにリクエストを飛ばしてみる。

ERB(Embedded Ruby)とは ERBテンプレートとは、HTMLにRubyスクリプトを埋め込むための仕組みのこと。 JavaでいうとJSPみたいなものかな? HTMLにスクリプトを埋め込むのって厳密にいうとMVCになってないと思うんだけど・・・。 ERBテンプレートとは、HTMLにR…

RailsでHello Worldしてみる。

Railsで新規のアプリケーションを作成する 新規のアプリケーションを作成するのは、rails new [アプリケーション名]というコマンドでOK。 > rails new hogeapili上記のコマンドによってできたディレクトリを確認すると、以下のようになる。 ├─app │ ├─assets…

色々ハマったけど、結局一発でRailsをWindows7にインストールできた。

Windows7にrailsをインストールする もうずーーっとrailsのインストールにてこずっていたのだけれど、以下のサイトをwindowのボタンをクリックして、ダウンロードしたexeを実行するだけで、railsのインストールができた。 http://railsinstaller.org/enイン…

Ruby on Railsのインストールでハマった。

WebにあるScriptからjQueryを使う 日本語おかしいかもしれないけれど、headに以下の記述を追加すれば、ローカルにjQueryをダウンロードしなくても使える。 <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script> <script src="http://code.jquery.com/jquery-migrate-1.2.1.min.js"></script> ・要素の後ろにjQueryオブジェクトを挿入 $(document).ready(function(){ $('.header').after(…