Files
discourse/app/models
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
..
2017-07-28 10:20:09 +09:00
2018-02-20 14:28:58 +08:00
2018-02-20 14:28:58 +08:00
2018-06-07 13:28:18 +08:00
2018-07-16 14:19:07 +08:00
2018-02-20 14:28:58 +08:00
2018-07-16 14:19:07 +08:00
2018-02-20 14:28:58 +08:00
2018-02-20 14:28:58 +08:00
2017-03-22 14:26:53 +08:00
2016-08-15 17:59:36 +10:00
2018-08-02 07:41:27 +10:00
2018-02-21 14:55:49 +08:00
2017-07-28 10:20:09 +09:00
2018-07-16 14:19:07 +08:00
2018-02-20 14:28:58 +08:00
2018-07-06 17:16:40 -05:00
2018-02-20 14:28:58 +08:00
2016-12-12 17:29:54 +08:00
2015-09-18 10:41:10 +10:00
2018-02-20 14:28:58 +08:00
2016-03-28 15:21:45 +11:00
2018-02-20 14:28:58 +08:00
2018-07-16 14:19:07 +08:00
2018-02-20 14:28:58 +08:00
2016-05-30 10:45:32 +10:00
2018-04-02 13:52:51 +08:00
2018-02-20 14:28:58 +08:00
2018-07-16 14:19:07 +08:00
2018-02-20 14:28:58 +08:00
2018-07-24 15:49:55 +08:00
2018-07-16 14:19:07 +08:00
2018-02-20 14:28:58 +08:00
2016-11-24 10:13:03 +08:00
2018-07-16 14:19:07 +08:00
2018-02-20 14:28:58 +08:00
2018-02-20 14:28:58 +08:00
2018-07-16 14:19:07 +08:00
2018-05-09 07:52:45 +08:00
2018-08-23 09:44:15 +02:00
2018-02-20 14:28:58 +08:00
2018-07-16 14:19:07 +08:00
2018-07-16 14:19:07 +08:00
2018-10-05 10:23:52 +01:00
2018-07-16 14:19:07 +08:00
2014-04-08 17:35:44 +02:00
2018-07-16 14:19:07 +08:00
2018-07-16 14:19:07 +08:00
2018-07-16 14:19:07 +08:00
2018-03-16 22:55:42 +01:00
2018-07-16 14:19:07 +08:00
2018-06-07 13:28:18 +08:00
2018-06-20 18:03:27 +10:00
2018-07-16 14:19:07 +08:00
2018-07-16 14:19:07 +08:00
2018-02-20 14:28:58 +08:00
2018-02-20 14:28:58 +08:00
2018-07-16 14:19:07 +08:00
2018-02-20 14:28:58 +08:00
2018-02-20 14:28:58 +08:00
2018-07-16 14:19:07 +08:00
2018-02-20 14:28:58 +08:00