discourse/db
David Taylor 9bf522f227
FEATURE: Mixed case tagging (#6454)
- By default, behaviour is not changed: tags are made lowercase upon creation and edit.

- If force_lowercase_tags is disabled, then mixed case tags are allowed.

- Tags must remain case-insensitively unique. This is enforced by ActiveRecord and Postgres.

- A migration is added to provide a `UNIQUE` index on `lower(name)`. Migration includes a safety to correct any current tags that do not meet the criteria.

- A `where_name` scope is added to `models/tag.rb`, to allow easy case-insensitive lookups. This is used instead of `Tag.where(name: "blah")`.

- URLs remain lowercase. Mixed case URLs are functional, but have the lowercase equivalent as the canonical.
2018-10-05 10:23:52 +01:00
..
fixtures Extract badge_posts view management logic into a service object. 2018-09-03 09:51:35 +08:00
migrate FEATURE: Mixed case tagging (#6454) 2018-10-05 10:23:52 +01:00
api_test_seeds.rb Updates api_test_seeds for multiple auth_token support (#5414) 2017-12-09 08:56:11 +11:00