BAB II TINJAUAN PUSTAKA
2.7. MySQL
3.2.5. Pemetaan relasi tabel ke dalam Model
Relasi antar tabel (associations) pada basisdata berpengaruh pada
hubungan model. Relasi tabel seperti one-to-many relationship akan dipetakan ke
3.2.5.1 Relasi model Fakultas dengan Jurusan
Sebuah fakultas mempunyai banyak jurusan, sedangkan satu fakultas
hanya dimiliki oleh satu jurusan. Relasi fakultas dengan jurusan adalah
one-to-many relationship. Jadi di dalam model Fakultas dapat dituliskan instruksi class Fakultas < ActiveRecord::Base
has_many :jurusans end
sedangkan di dalam model jurusan dituliskan instruksi,
class Jurusan < ActiveRecord::Base belongs_to :fakultas
end
3.2.5.2 Relasi jurusan dengan category
Sebuah jurusan dapat memiliki beberapa category buku, akan tetapi
sebuah category buku hanya untuk satu jurusan. Berdasarkan penjelasan tersebut
maka relasi table jurusan dan category adalah satu banding banyak. Jadi penulisan
instruksi dalam model jurusan adalah sebagai berikut
class Jurusan < ActiveRecord::Base has_many :categories
belongs_to :fakultas end
Dan di dalam model category dapat dituliskan instruksi sebagai berikut
class Category < ActiveRecord::Base belongs_to :jurusan
end
3.2.5.3 Relasi jurusan dengan categoryvideos
Sebuah jurusan dapat memiliki beberapa category video, akan tetapi
maka relasi table jurusan dan categoryvideos adalah satu banding banyak. Jadi
penulisan instruksi dalam model jurusan adalah sebagai berikut
class Jurusan < ActiveRecord::Base has_many :categories
has_many :categoryvideos belongs_to :fakultas end
Dan di dalam model categoryvideo dapat dituliskan instruksi sebagai berikut
class Categoryvideo < ActiveRecord::Base belongs_to :jurusan
end
3.2.5.4 Relasi model Category dengan Book
Sebuah kategori buku mempunyai banyak buku, sedangkan satu buku
hanya dimiliki oleh satu kategori buku. Relasi kategori buku dengan buku adalah
one-to-many relationship. Jadi di dalam model Category dapat dituliskan instruksi
class Category < ActiveRecord::Base has_many :books
belongs_to :jurusan end
sedangkan di dalam model Book dituliskan instruksi,
class Book < ActiveRecord::Base belongs_to :category
end
3.2.5.5 Relasi model Categoryvideo dengan Video
Sebuah kategori video mempunyai banyak video, sedangkan satu video
hanya dimiliki oleh satu kategori video. Relasi kategori video dengan video
adalah one-to-many relationship. Jadi di dalam model Categoryvideo dapat
dituliskan instruksi
class Categoryvideo < ActiveRecord::Base has_many :videos
belongs_to :jurusan end
class Video < ActiveRecord::Base belongs_to :categoryvideo
end
3.2.5.6 Relasi model Book dengan Comment
Sebuah buku dapat memiliki beberapa komentar, tetapi sebuah komentar
hanya dimiliki sebuah buku. Sehingga hubungan tabel buku dengan komentar
adalah one-to-many. Jadi di dalam model Book dapat dituliskan
class Book < ActiveRecord::Base belongs_to :category
has_many :comments end
Kemudian di dalam model Comment dapat dituliskan instruksi,
class Comment < ActiveRecord::Base belongs_to: book
end
3.2.5.7 Relasi model Video dengan Commentvideo
Sebuah video dapat memiliki beberapa komentar, tetapi sebuah komentar
hanya dimiliki sebuah video. Sehingga hubungan tabel video dengan komentar
adalah one-to-many. Jadi di dalam model Video dapat dituliskan
class Video < ActiveRecord::Base belongs_to :categoryvideo
has_many :commentvideos end
Kemudian di dalam model Commentvideo dapat dituliskan instruksi,
class Commentvideo < ActiveRecord::Base belongs_to: video
end
3.2.5.8 Relasi model User dengan Comment
Seorang anggota juga dapat menulis beberapa komentar pada sebuah buku,
penjelasan tersebut maka hubungan tabel antara users dan comment adalah satu
banding banyak. Jadi penulisan instruksi dalam model User adalah sebagai berikut
class User < ActiveRecord::Base has_many :books
has_many :videos has_many :comments end
sedangkan di dalam model Comment dapat dituliskan instruksi sebagai berikut
class Comment < ActiveRecord::Base belongs_to: book
belongs_to: comment end
3.2.5.9 Relasi model User dengan Commentvideo
Seorang anggota juga dapat menulis beberapa komentar pada sebuah
video, tetapi satu komentar hanya dapat ditambahkan oleh seorang anggota.
Berdasarkan penjelasan tersebut maka hubungan tabel antara users dan
commentvideo adalah satu banding banyak. Jadi penulisan instruksi dalam model User adalah sebagai berikut
class User < ActiveRecord::Base has_many :books
has_many :videos
has_many :commentvideos end
sedangkan di dalam model Commentvideo dapat dituliskan instruksi sebagai
berikut
class Commentvideo < ActiveRecord::Base belongs_to: book
belongs_to: commentvideo end
3.2.5.10 Relasi model Book dengan User
Hubungan tabel anggota dengan buku adalah one-to-many. Sehingga di
dalam model user dapat dituliskan
class User < ActiveRecord::Base has_many :books
has_many :commentvideos end
Kemudian di dalam model Book dapat dituliskan instruksi,
class Book < ActiveRecord::Base belongs_to :category
belongs_to :user has_many :comments end
3.2.5.11 Relasi model Video dengan User
Seorang anggota dapat memiliki beberapa video, tetapi sebuah video
hanya dimiliki seorang anggota. Hubungan tabel anggota dengan video adalah
one-to-many. Sehingga di dalam model user dapat dituliskan class User < ActiveRecord::Base
has_many :books has_many :videos has_many :comments has_many :commentvideos end
Kemudian di dalam model Video dapat dituliskan instruksi,
class Video < ActiveRecord::Base belongs_to :category
belongs_to :user has_many :comments end
langkah selanjutnya dalam pembuatan tugas akhir ini adalah membahas mengenai
proses desain dari aplikasi yang dibuat.