LoginSignup
0
1

More than 5 years have passed since last update.

ActiveRecord DB検索(find,firsrt,last,all)

Last updated at Posted at 2017-02-27

findメソッド SQL文

#Find the client with primary key (id) 10.
client = Client.find(10)
#=> #<Client id: 10, first_name: "Ryan">
SELECT * FROM client WHERE (clients.id = 10) LIMIT 1
ActiveRecord::RecordNotFound
#Find the client with primary keys 1 and 10
client = Client.find([1, 10]) # Client.find(1, 10)でもよい
#=> [#<Client id: 1, first_name: "Lifo">,#<Client id: 10, first_name: "Ryan">]
SELECT * FROM clients WHERE (clients.id IN (1,10))

find('1:主キー値')

def get_find
@article = Article.find(1)
render 'articles/show'
end
SELECT "articles".* FROM "articles" WHERE "articles"."id" = ? LIMIT 1
[["id", 1]]
def get_find2
@articles = Article.find(1,3,5)
render 'get_all'
end
SELECT "articles".* FROM "articles" WHERE "articles"."id" IN (1,3,5)

find_all_by_'xxxx:フィールド名'('MVC入門:検索値')

find_by_'xxxx:フィールド名'('MVC入門:')

@article =Article.find_by_title('member:検索値')
SELECT "articles".* FROM "articles"
WHERE "articles".* "title" = 'MVC入門'
@users = User.find_all_by_roles('membaer')
SELECT "users".* FROM "users" WHERE "users"."roles" = 'member'

#blogテーブルからIDが1のデータを検索し、ロードする
blog = Blog.find(1)
#findメソッドの引数に指定するIDは、数値でも文字列でも構わない
blog = Blog.find("1")

SELECT * FROM blog WHERE id = 1
#IDが1,2,3のレコードをロードする
blog = Blog.find(1,2,3)
#可変長引数ではなく、IDの値を複数含んだ配列オブジェクトを渡しても可
blog = Blog.find([1,2,3])
SELECT * FROM blog WHERE blog.id IN (1,2,3)
#blogテーブルから一番"先頭"のレコードを検索してロードする
blog = Blog.first
#blogテーブルから一番"最後"のレコードを検索してロードする
blog = Blog.last
#blogテーブルから"すべて"のレコードを検索してロードする
blogs = Blog.all
def index
flash[:notice] = "きょうは#{Date.today}"
end
<% if flash[:notice] %>
<div id="flash" style="color": green; border: green solid">
<%=flash[:notice]%>
</div>
<% end %>
def index
flash.now[:notice] = "ようこそ。今日は#{Date.today}です。"
#このメッセージはリクエスト内でのみ有効
end
redirect_to :root, :flash => {:error => "IDまたはパスワードが違います。"}
redirect_to :root, :notice => "ようこそ!!"
0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1