2013年07月30日

rubyのeachで通し番号を取得

eachではなくeach_with_indexを使うらしい

@hoge.each_with_index do |fuga, i|
print(i)
posted by ねこまんま at 17:42 | Comment(0) | TrackBack(0) | メソッド | このブログの読者になる | 更新情報をチェックする

2013年07月26日

Ruby on RailsでJSONを出力

デバッグなどでオブジェクトを1次的にJSONに変換して出力するには以下のコードを書く

personal = {'name' => 'Yamada', 'old' => 28}
render :json => @category
タグ:JSON
posted by ねこまんま at 14:02 | Comment(0) | TrackBack(0) | Ruby on Rails | このブログの読者になる | 更新情報をチェックする

rubyの三項演算子

hoge = fuga>0 ? "piyo" : "bar"


fugaが0より大きい場合は"piyo"が小さい場合はbarがhogeにはいります。
タグ:三項演算子
posted by ねこまんま at 14:01 | Comment(0) | TrackBack(0) | 文法 | このブログの読者になる | 更新情報をチェックする

Ruby on Railsでコンソールモード

以下のコマンドでコンソールモードになり、直接Rubyのコマンドを実行できます。

rails c


コンソールモードの終了はControl + D
posted by ねこまんま at 14:00 | Comment(0) | TrackBack(0) | Ruby on Rails | このブログの読者になる | 更新情報をチェックする

Ruby on RailsでDBを操作する

以下のコマンドでDBコンソールになるので、直接DBを操作・参照できるようになります。

rails dbconsole


デフォルトのsqliteなら.tablesでテーブルの一覧を表示、.helpでヘルプを表示、.quitでDBコンソールの終了を行うことができます

sqlite > .tables
sqlite > .help
sqlite > .quit
posted by ねこまんま at 13:59 | Comment(0) | TrackBack(0) | Ruby on Rails | このブログの読者になる | 更新情報をチェックする

2013年07月19日

Ruby on Railsのdb:seedを使ってデータの流し込みを行う

db/seed.rbの内容を以下のように変更

# coding: utf-8
Tweet.create(:message => "hoge");


その後、コマンドラインを以下のコマンドを入れるとデータが投入される

rake db:seed


複数のデータを投入したい場合は以下のようにループを使って挿入

# coding: utf-8
5.times do |no|
Tweet.create(:message => "hoge #{no}")
end


tableの初期値のように一度しか投入したくない場合は以下のように設定しておく

# coding: utf-8
message = Tweet.first
unless message
5.times do |no|
Tweet.create(:message => "hoge #{no}")
end
end

posted by ねこまんま at 18:20 | Comment(0) | TrackBack(0) | Ruby on Rails | このブログの読者になる | 更新情報をチェックする

Ruby on RailsでDBを初期化

以下のコマンドでRuby on RailsのDBを初期化できる

rake db:migrate:reset
タグ:ruby on rails
posted by ねこまんま at 18:19 | Comment(0) | TrackBack(0) | Ruby on Rails | このブログの読者になる | 更新情報をチェックする

2013年07月12日

include?で指定した値が配列に入っているかどうかチェック

Rubyのinclude?は配列に引数で指定した値が入っている場合はtrueを入っていない場合はfalseを返す

@hoge = ["hoge","fuga"]
@message = @hoge.include?("hoge")
#true


@hoge = ["hoge","fuga"]
@message = @hoge.include?("bar")
#false
タグ:include?
posted by ねこまんま at 19:49 | Comment(0) | TrackBack(0) | メソッド | このブログの読者になる | 更新情報をチェックする

Ruby on Railsのpresent?で値が入っているかどうかチェック

Ruby on Railsのpresent?は変数や配列に値が入っている場合はtrueを入っていない場合はfalseを返す

@message = @hoge.present?
#false


@hoge = "fuga"
@message = @hoge.present?
#true
posted by ねこまんま at 19:48 | Comment(0) | TrackBack(0) | Ruby on Rails | このブログの読者になる | 更新情報をチェックする

Ruby on Rails で利用できるHamlの文法


コントローラーから受け取った変数などを出力

=@message


-を利用するとrubyのコードが書ける。

例えばif文

-if @messege
hoge
-else
fuga


変数の定義

-hoge = 'fuga'
=hoge


ラジオボタンの出力

= radio_button_tag :check, "1"
= radio_button_tag :check, "2"


以下のHTMLが出力される

<input id="check_1" name="check" type="radio" value="1" />
<input id="check_2" name="check" type="radio" value="2" />
posted by ねこまんま at 17:57 | Comment(0) | TrackBack(0) | Ruby on Rails | このブログの読者になる | 更新情報をチェックする

Ruby on Rails でHamlを使う

Gemfileに以下のgemを追加

group :assets do

gem 'haml-rails'

end


bundle installよりgemのインストールを行います

bundle install --path .bundle


viewのerbファイルをhamlファイルに変更します。

index.html.erb -> index.html.haml

後はviewの内容をhaml形式に返ればOK

%h1
=@message
posted by ねこまんま at 17:12 | Comment(0) | TrackBack(0) | Ruby on Rails | このブログの読者になる | 更新情報をチェックする

80ポートへのアクセスを3000ポートに転送するコマンド

sudo ipfw add 100 fwd 127.0.0.1,3000 tcp from any to me 80


Ruby on Railsで開発している際に便利
posted by ねこまんま at 15:22 | Comment(0) | TrackBack(0) | サーバー | このブログの読者になる | 更新情報をチェックする

Ruby on RailsでHello World

まずは、config/routes.rbに以下の一文を追加

get 'helloworlds' => 'helloworlds#index'


app/controllers/helloworlds_controller.rbを作成し以下の内容にする

class HelloworldsController < ApplicationController
def index
@message = 'Hello World'
end
end


views/helloworlds/index.html.erbを作成し以下の内容にする

<%= @message %>


http://localhost:3000/helloworldsにアクセスするとコントローラーで設定した'Hello World'が表示されます。

値を配列で渡したい場合はコントローラーとビューを以下のように変更することで対応できます。

class HelloworldsController < ApplicationController
def index
@messages = ["apple", "orange", "lemon"]
end
end


<% @messages.each do |message| %>
<%= message %>
<% end %>
タグ:ruby on rails
posted by ねこまんま at 13:49 | Comment(0) | TrackBack(0) | Ruby on Rails | このブログの読者になる | 更新情報をチェックする

2013年07月10日

Ruby on Rails で Compass

Ruby on RailsはデフォルトでSassは使えるがCompassが使えないので別途インストールが必要です。

Gemfileを開き'compass-rails'を追加

group :assets do
gem 'sass-rails', '~> 3.2.3'
gem 'coffee-rails', '~> 3.2.1'
gem 'compass-rails'
gem 'uglifier', '>= 1.0.3'
end


bundle installよりgemのインストールを行います

bundle install --path .bundle


初回はCompassの初期化を行います。

bundle exec compass init rails


これでScssファイルでCompassが使えるようになります。(@import "compass";は忘れずに)

config.rbは/config/compass.rbとして生成されています。
posted by ねこまんま at 03:30 | Comment(0) | TrackBack(0) | Ruby on Rails | このブログの読者になる | 更新情報をチェックする

広告


この広告は60日以上更新がないブログに表示がされております。

以下のいずれかの方法で非表示にすることが可能です。

・記事の投稿、編集をおこなう
・マイブログの【設定】 > 【広告設定】 より、「60日間更新が無い場合」 の 「広告を表示しない」にチェックを入れて保存する。


×

この広告は1年以上新しい記事の投稿がないブログに表示されております。