418342 ภาคปลาย 2552/ปฏิบัติการที่ 5

จาก Theory Wiki
ไปยังการนำทาง ไปยังการค้นหา

ในปฏิบัติการนี้ เราจะสร้าง model, controller, และ view อย่างง่ายๆ สำหรับค้นหาข้อมูลในฐานข้อมูลของนักดนตรีสากล

สร้าง Rails Application และ Model

ให้คุณสร้าง rails application ชื่อ music ขึ้นมาใน directory หนึ่ง

หลังจากนั้นเราจะสร้าง model ชื่อ artist ด้วยการสั่ง

ruby script/generate model artist

แล้วจงไปแก้ไขไฟล์ migration ที่ชื่อ db/migrate/<<timestamp>>_create_artists.rb เพื่อให้ในตารางมีฟีลด์ดังต่อไปนี้

ชื่อ ชนิด
name string
origin string
genre string
homepage string
album text
track string

หลังจากนั้นให้สั่งให้ migration ทำงานด้วยคำสั่ง

rake db:migrate

เพื่อความสะดวก เราได้เตรียมฐานข้อมูลที่มีข้อมูลนักดนตรีเอาไว้ให้คุณแล้ว ให้คุณดาวน์โหลดไฟล์ development.sqlite3 แล้วนำมันไปแทนที่ไฟล์ development.sqlite3 ที่ rails สร้างไว้ในไดเรคทอรี db

หมายเหตุ: ไฟล์ development.sqlite3 นี้สร้างขึ้นมาจากข้อมูลนักดนตรีของ http://www.freebase.com (คุณสามารถดาวน์โหลดไฟล์์ต้นฉบับได้จาก http://download.freebase.com/datadumps/2009-10-01/browse/music/ โดยเอาไฟล์ชื่อ artist.tsv)

เขียนหน้าเว็บสำหรับแสดงผลศิลปินแต่ละคน

จงสร้าง controller ชื่อ artists

หลังจากนั้นไปแก้ไข ArtistsController ในไฟล์ app/controllers/artists_controller.rb โดยทำการเพิ่ม action ชื่อ show

Action show นี้ เมื่อเราเข้าถึงมันผ่าน url http://localhost:3000/artists/show/<<id ของศิลปิน>> แล้วจะต้องแสดงข้อมูลของศิลปินตาม screenshot ข้างล่างนี้