簡體   English   中英

使行為可標記的寶石區分大小寫

[英]make acts-as-taggable gem case-sensitive

我將行為用作標簽山牆寶石,它強​​制使用大寫字母的某些標簽全部小寫。 例如,當我嘗試添加“計算機科學”時,它改為添加“計算機科學”,並且服務器日志顯示如下:

  ActsAsTaggableOn::Tag Load (0.6ms)  SELECT "tags".* FROM "tags" INNER JOIN "taggings" ON "tags"."id" = "taggings"."tag_id" WHERE "taggings"."taggable_id" = $1 AND "taggings"."taggable_type" = $2 AND (taggings.context = 'tags' AND taggings.tagger_id IS NULL)  [["taggable_id", 12], ["taggable_type", "Project"]]
   => ["computer science", "Computer Science"]

我不想這樣。 actastaggable github頁面說要添加以下內容:

ActsAsTaggableOn.strict_case_match = true

我已將該行添加到application.rb文件,但仍無法正常工作。 如何使可舉報區分大小寫?

我已經測試過了,它對我有用。 確保您的application.rb中沒有編寫以下內容:

ActsAsTaggableOn.force_lowercase = true

如果那不能解決,請添加更多信息。

話雖如此,您可能出於兩個原因考慮將標簽保持小寫:

1.)清除網址-您要避免在網址中使用大寫字母。 它們不區分大小寫,但是很漂亮。 如果允許除您之外的其他人添加標簽,他們可能會提出“ hEll0PeEpS”之類的字符串,並且您不想使用干凈的URL,對嗎?

2.)控制您的設計。 這與我提出的第一點有關-如果有人隨機使用大寫/小寫字母使用精美標簽,則無論您在哪里列出標簽,都會這樣寫。

請將它們保存為小寫字母,然后使用.capitalize

但是,如果您的要求有所不同,並且需要自由選擇大寫和小寫字母,那么請忽略我的其他想法:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM