aboutsummaryrefslogtreecommitdiffstats
path: root/db
diff options
context:
space:
mode:
Diffstat (limited to 'db')
-rw-r--r--db/migrate/042_unique_user_urls.rb17
-rw-r--r--db/schema.rb4
2 files changed, 19 insertions, 2 deletions
diff --git a/db/migrate/042_unique_user_urls.rb b/db/migrate/042_unique_user_urls.rb
new file mode 100644
index 000000000..1350d1580
--- /dev/null
+++ b/db/migrate/042_unique_user_urls.rb
@@ -0,0 +1,17 @@
+class UniqueUserUrls < ActiveRecord::Migration
+ def self.up
+ # do last registered ones first, so the last ones get rubbish URLs
+ User.find(:all, :order => "id desc").each do |user|
+ user.update_url_name
+ user.save!
+ end
+ remove_index :users, :url_name
+ add_index :users, :url_name, :unique => true
+ end
+
+ def self.down
+ remove_index :users, :url_name
+ add_index :users, :url_name, :unique => false
+ end
+
+end
diff --git a/db/schema.rb b/db/schema.rb
index 49eec890b..00c77b946 100644
--- a/db/schema.rb
+++ b/db/schema.rb
@@ -9,7 +9,7 @@
#
# It's strongly recommended to check this file into your version control system.
-ActiveRecord::Schema.define(:version => 41) do
+ActiveRecord::Schema.define(:version => 42) do
create_table "incoming_messages", :force => true do |t|
t.integer "info_request_id", :null => false
@@ -134,6 +134,6 @@ ActiveRecord::Schema.define(:version => 41) do
t.text "url_name", :null => false
end
- add_index "users", ["url_name"], :name => "index_users_on_url_name"
+ add_index "users", ["url_name"], :name => "index_users_on_url_name", :unique => true
end