Added project model; added views for viewing and adding projects
This commit is contained in:
35
db/migrations/0004_add_projects_table.rb
Normal file
35
db/migrations/0004_add_projects_table.rb
Normal file
@ -0,0 +1,35 @@
|
||||
Sequel.migration do
|
||||
|
||||
up do
|
||||
# create projects table
|
||||
create_table(:projects) do
|
||||
primary_key :id
|
||||
String :name, null: false
|
||||
String :description
|
||||
DateTime :created_at, default: Sequel::CURRENT_TIMESTAMP
|
||||
DateTime :updated_at, default: Sequel::CURRENT_TIMESTAMP
|
||||
end
|
||||
|
||||
# create tables for project many-to-many relationships
|
||||
create_table(:projects_hardware) do
|
||||
foreign_key(:project_id, :projects, null: false)
|
||||
foreign_key(:hardware_id, :hardware, null: false)
|
||||
end
|
||||
create_table(:projects_benchmarks) do
|
||||
foreign_key(:project_id, :projects, null: false)
|
||||
foreign_key(:benchmark_id, :benchmarks, null: false)
|
||||
end
|
||||
create_table(:projects_tests) do
|
||||
foreign_key(:project_id, :projects, null: false)
|
||||
foreign_key(:test_id, :tests, null: false)
|
||||
end
|
||||
end
|
||||
|
||||
down do
|
||||
drop_table(:projects_tests)
|
||||
drop_table(:projects_benchmarks)
|
||||
drop_table(:projects_hardware)
|
||||
drop_table(:projects)
|
||||
end
|
||||
|
||||
end
|
Reference in New Issue
Block a user