我想在將用戶名保存到我的數據庫中之前將用戶名變成符號,這似乎是合乎邏輯的,因爲該用戶名會經常被引用,我們希望在內存中節省。但是,將字符串替換爲任何空格或其他非法字符的替代選擇是什麼?還是應該保持一個字符串以避免麻煩?什麼是符號可能有空間的好策略?
回答
把它作爲一個字符串,避免麻煩。
擔心這種事情就是所謂的過早優化。此外,用戶名不太可能在用戶之間共享,因此無論如何你都不會節省太多內存。
不成熟的優化是編程中所有邪惡(或至少大部分)的根源。 - Knuth – bheeshmar 2011-05-28 04:00:40
如果你絕對必須在你的符號空間,將Ruby讓你這樣做:
foo = :"symbol with spaces" # => :"symbol with spaces"
foo.inspect # => ":\"symbol with spaces\""
這*是真正的答案,但我同意你應該不惜一切代價避免使用它。 – colinross 2011-05-28 02:29:56
@ zeletic..how將符號存儲在數據庫中......當查詢被retreived時它們會作爲符號返回嗎?當我嘗試這個'Market.create(:name =>:Test)','Market.find(17).name'時,我得到了這個'「:Test \ n」' – rubyprince 2011-05-28 10:31:08
ActiveRecord序列化'Symbol's在寫入數據庫時寫入YAML,但在讀取時不會反序列化。在這個SO問題中有一個簡單的修復:http://stackoverflow.com/questions/2817145/in-rails-models-for-symbols-get-automatically-converted-to-yaml-when-saving-to-d 。或者更好的是,不要在數據庫中首先寫入符號:) – zetetic 2011-05-28 17:07:33
- 1. 什麼是更好的實施策略?
- 2. OpsCenter密鑰空間的推薦複製策略是什麼?
- 3. 什麼是有效的TDD策略?
- 4. 什麼是提取策略?
- 5. 是否有可能避開手機撥號白名單策略?
- 6. 針對knitr報告的良好本地化策略是什麼?
- 7. 什麼是最好的POCO狀態跟蹤策略? (EF)
- 8. 什麼是好的社交數據收集策略?
- 9. 什麼是更新實時數據庫表的好策略?
- 10. 什麼是集成單選按鈕的好策略?
- 11. 什麼是最好的緩衝區管理丟棄策略?
- 12. 什麼是一個好的Linux退出錯誤代碼策略?
- 13. 什麼是最好的jar組織策略?
- 14. 繪製大型數據集(1M +)的好策略是什麼?
- 15. 什麼是最好的Docker標記策略?
- 16. 什麼是一個好的策略來實現類似於facebook'likes'的功能?
- 17. 什麼是看起來像空間的符號,但不是空間? (不是 )
- 18. 對於gc輸出,我有什麼好的gc調優策略?
- 19. Amazon S3上的密鑰名稱有什麼好策略?
- 20. Passportjs中本地基本策略和摘要策略之間有什麼區別
- 21. 什麼是使內容可嵌入外部網站的良好實踐/策略?
- 22. 什麼是git的合併策略?
- 23. 什麼是Kotlin的兼容性策略?
- 24. 自動用戶研究,什麼是好策略?
- 25. 在.NET中審計用戶身份 - 什麼是好策略?
- 26. 通過網頁檢查更新有什麼好策略?
- 27. 在Android上處理異步回調有什麼好策略?
- 28. 我有一個數據庫(mysql)。什麼是最好的「故障轉移」策略?
- 29. ODM註釋:什麼是「策略」屬性?
- 30. 什麼是SIGKILL權限策略?
請解釋你如何把用戶名變成一個符號,以及如何符號可能在它有一個空間。這一切都有點*不清楚* – pavium 2011-05-28 00:30:44
聽起來像過早的優化...,它不會工作;) – d11wtq 2011-05-28 00:33:05