ruby-on-rails - Ruby on Rails 的 varchar 迁移问题

标签 ruby-on-rails activerecord migration rails-migrations

我创建了一个新表,其中包含“注释”列。我相信默认值是 varchar(255),但我希望此列成为文本区域而不是字段,并允许更多数据。我想我会在 ActiveRecord::Migration 文件中进行此更改,但我对格式很好奇。例如,我是否只需将 varchar(255) 更改为 varchar(1000) ? (如果是的话,格式是什么?

def self.up
    create_table :notes do |t|
      t.string :note :varchar(1000)
    end

这个格式正确吗?此外,如何使输入字段成为多行。抱歉,如果这是简单的事情,但我对编程和 RoR 很陌生。谢谢。

最佳答案

正确的格式是

t.string :note, :limit => 1000

确保您使用的 MySQL 版本(或任何数据库)支持长度超过 256 个字符的 varchar。

如果你想使用大文本 block ,那就是

t.text :note

参见http://api.rubyonrails.org/classes/ActiveRecord/ConnectionAdapters/TableDefinition.html欲了解更多信息

关于ruby-on-rails - Ruby on Rails 的 varchar 迁移问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1663020/

相关文章:

ruby-on-rails - 使用 ActiveRecord 总和进行排序和限制?

ruby-on-rails - 如何在 group_by 计数查询中获取总结果集大小?

ruby-on-rails - 将主键添加到 Rails 中的现有字段

svn - 从 Subversion 1.4 迁移到 1.6

mysql - ruby on rails 自定义脚手架

ruby-on-rails - Capistrano 源代码中的 <<-CMD 是什么?

javascript - jQuery 文档准备就绪,未在带有 ActionCable 的 Rails 5 应用程序中触发

ruby-on-rails - database.yml 中应该包含什么以在没有数据库的情况下使用 rails?

mysql - 关联模型 ruby​​ on rails 上的一个数据库查询

xcode - 核心数据 - 无法将空字符串设置为属性的默认值