我正在使用Rails创建一个新的Web应用程序,并且想知道,string和之间有什么区别text?什么时候应该使用?
我在哪里可以找到可以在Ruby on Rails 4中使用的数据类型列表?如
text string integer float date 我一直在学习新的,我很想有一个我可以轻易参考的清单.
有时,Activerecord数据类型让我感到困惑.呃,经常.对于特定情况,我的一个永恒问题是:
我应该使用
:decimal或:float?
我经常遇到这个链接,ActiveRecord :: decimal vs:float?,但答案不够清楚,我无法确定:
我见过许多线程,人们建议不要使用浮点数并始终使用小数.我也看到一些人建议只使用浮动用于科学应用.
以下是一些示例案例:
-45.756688,120.5777777,...0.9,1.25,1.333,1.4143,...我:decimal过去曾经使用过,但是我发现与BigDecimal浮点数相比,处理Ruby中的对象是不必要的尴尬.例如,我也知道我可以:integer用来代表金钱/美分,但它并不适合其他情况,例如精确度随时间变化的数量.
floating-point types ruby-on-rails decimal rails-activerecord
我知道Rails数据类型可以在这里找到:
或者在这里:
但我找不到的是每个的清晰定义,以及浮点数与小数点之间的差异,或字符串与文本之间的差异.
我在哪里可以找到数据类型的深入定义?
首先我运行了这个命令
rails generate model FeedbackComment type:smallint reply:text
Run Code Online (Sandbox Code Playgroud)
然后
rake db:migrate
Run Code Online (Sandbox Code Playgroud)
我收到了这个错误
StandardError: An error has occurred, this and all later migrations canceled:
undefined method `smallint' for #<ActiveRecord::ConnectionAdapters::PostgreSQLAdapter::TableDefinition:0x9d1a318>/var/www/blog/db/migrate/20140712064127_create_feedback_comments.rb:4:in `block in change'
Run Code Online (Sandbox Code Playgroud)
如何在postgreSQL中通过命令创建smallint?
请帮帮我