LocalCensus model created
This commit is contained in:
8
app/models/local_census_record.rb
Normal file
8
app/models/local_census_record.rb
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
class LocalCensusRecord < ActiveRecord::Base
|
||||||
|
has_one :user
|
||||||
|
|
||||||
|
validates :document_number, presence: true
|
||||||
|
validates :document_type, presence: true
|
||||||
|
validates :date_of_birth, presence: true
|
||||||
|
validates :postal_code, presence: true
|
||||||
|
end
|
||||||
@@ -32,6 +32,7 @@ class User < ActiveRecord::Base
|
|||||||
has_many :direct_messages_received, class_name: 'DirectMessage', foreign_key: :receiver_id
|
has_many :direct_messages_received, class_name: 'DirectMessage', foreign_key: :receiver_id
|
||||||
has_many :legislation_answers, class_name: 'Legislation::Answer', dependent: :destroy, inverse_of: :user
|
has_many :legislation_answers, class_name: 'Legislation::Answer', dependent: :destroy, inverse_of: :user
|
||||||
belongs_to :geozone
|
belongs_to :geozone
|
||||||
|
belongs_to :local_census_record
|
||||||
|
|
||||||
validates :username, presence: true, if: :username_required?
|
validates :username, presence: true, if: :username_required?
|
||||||
validates :username, uniqueness: { scope: :registering_with_oauth }, if: :username_required?
|
validates :username, uniqueness: { scope: :registering_with_oauth }, if: :username_required?
|
||||||
|
|||||||
15
db/migrate/20170708174932_create_local_census_records.rb
Normal file
15
db/migrate/20170708174932_create_local_census_records.rb
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
class CreateLocalCensusRecords < ActiveRecord::Migration
|
||||||
|
def change
|
||||||
|
create_table :local_census_records do |t|
|
||||||
|
t.string :document_number, null: false
|
||||||
|
t.string :document_type, null: false
|
||||||
|
t.date :date_of_birth, null: false
|
||||||
|
t.string :postal_code, null: false
|
||||||
|
t.integer :user_id
|
||||||
|
|
||||||
|
t.timestamps null: false
|
||||||
|
end
|
||||||
|
|
||||||
|
add_foreign_key :local_census_records, :users, column: :user_id
|
||||||
|
end
|
||||||
|
end
|
||||||
18
db/schema.rb
18
db/schema.rb
@@ -11,7 +11,7 @@
|
|||||||
#
|
#
|
||||||
# It's strongly recommended that you check this file into your version control system.
|
# It's strongly recommended that you check this file into your version control system.
|
||||||
|
|
||||||
ActiveRecord::Schema.define(version: 20170626081337) do
|
ActiveRecord::Schema.define(version: 20170708174932) do
|
||||||
|
|
||||||
# These are extensions that must be enabled in order to support this database
|
# These are extensions that must be enabled in order to support this database
|
||||||
enable_extension "plpgsql"
|
enable_extension "plpgsql"
|
||||||
@@ -108,8 +108,8 @@ ActiveRecord::Schema.define(version: 20170626081337) do
|
|||||||
|
|
||||||
create_table "budget_headings", force: :cascade do |t|
|
create_table "budget_headings", force: :cascade do |t|
|
||||||
t.integer "group_id"
|
t.integer "group_id"
|
||||||
t.string "name", limit: 50
|
t.string "name", limit: 50
|
||||||
t.integer "price", limit: 8
|
t.integer "price", limit: 8
|
||||||
t.integer "population"
|
t.integer "population"
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -468,6 +468,16 @@ ActiveRecord::Schema.define(version: 20170626081337) do
|
|||||||
add_index "legislation_questions", ["hidden_at"], name: "index_legislation_questions_on_hidden_at", using: :btree
|
add_index "legislation_questions", ["hidden_at"], name: "index_legislation_questions_on_hidden_at", using: :btree
|
||||||
add_index "legislation_questions", ["legislation_process_id"], name: "index_legislation_questions_on_legislation_process_id", using: :btree
|
add_index "legislation_questions", ["legislation_process_id"], name: "index_legislation_questions_on_legislation_process_id", using: :btree
|
||||||
|
|
||||||
|
create_table "local_census_records", force: :cascade do |t|
|
||||||
|
t.string "document_number", null: false
|
||||||
|
t.string "document_type", null: false
|
||||||
|
t.date "date_of_birth", null: false
|
||||||
|
t.string "postal_code", null: false
|
||||||
|
t.integer "user_id"
|
||||||
|
t.datetime "created_at", null: false
|
||||||
|
t.datetime "updated_at", null: false
|
||||||
|
end
|
||||||
|
|
||||||
create_table "locks", force: :cascade do |t|
|
create_table "locks", force: :cascade do |t|
|
||||||
t.integer "user_id"
|
t.integer "user_id"
|
||||||
t.integer "tries", default: 0
|
t.integer "tries", default: 0
|
||||||
@@ -793,6 +803,7 @@ ActiveRecord::Schema.define(version: 20170626081337) do
|
|||||||
t.string "status", default: "draft"
|
t.string "status", default: "draft"
|
||||||
t.datetime "created_at", null: false
|
t.datetime "created_at", null: false
|
||||||
t.datetime "updated_at", null: false
|
t.datetime "updated_at", null: false
|
||||||
|
t.string "locale"
|
||||||
end
|
end
|
||||||
|
|
||||||
create_table "spending_proposals", force: :cascade do |t|
|
create_table "spending_proposals", force: :cascade do |t|
|
||||||
@@ -1034,6 +1045,7 @@ ActiveRecord::Schema.define(version: 20170626081337) do
|
|||||||
add_foreign_key "geozones_polls", "polls"
|
add_foreign_key "geozones_polls", "polls"
|
||||||
add_foreign_key "identities", "users"
|
add_foreign_key "identities", "users"
|
||||||
add_foreign_key "legislation_draft_versions", "legislation_processes"
|
add_foreign_key "legislation_draft_versions", "legislation_processes"
|
||||||
|
add_foreign_key "local_census_records", "users"
|
||||||
add_foreign_key "locks", "users"
|
add_foreign_key "locks", "users"
|
||||||
add_foreign_key "managers", "users"
|
add_foreign_key "managers", "users"
|
||||||
add_foreign_key "moderators", "users"
|
add_foreign_key "moderators", "users"
|
||||||
|
|||||||
@@ -1,4 +1,7 @@
|
|||||||
FactoryGirl.define do
|
FactoryGirl.define do
|
||||||
|
factory :local_census_record do
|
||||||
|
|
||||||
|
end
|
||||||
sequence(:document_number) { |n| "#{n.to_s.rjust(8, '0')}X" }
|
sequence(:document_number) { |n| "#{n.to_s.rjust(8, '0')}X" }
|
||||||
|
|
||||||
factory :user do
|
factory :user do
|
||||||
|
|||||||
5
spec/models/local_census_record_spec.rb
Normal file
5
spec/models/local_census_record_spec.rb
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
require 'rails_helper'
|
||||||
|
|
||||||
|
RSpec.describe LocalCensusRecord, type: :model do
|
||||||
|
pending "add some examples to (or delete) #{__FILE__}"
|
||||||
|
end
|
||||||
Reference in New Issue
Block a user