我试图让Rails将字符串的第一个字符大写,并让其他所有字符保持原样.我遇到了一个问题,"我来自纽约"变成了"我来自纽约"

我将使用什么方法 Select 第一个字符?

谢谢

EDIT: I tried to implement what macek suggested, but I'm getting a "undefined method `capitalize'" error. The code works fine without the capitalize line. 谢谢 for the help!

def fixlistname!
  self.title = self.title.lstrip + (title.ends_with?("...") ? "" : "...")
  self.title[0] = self.title[0].capitalize
  errors.add_to_base("Title must start with \"You know you...\"") unless self.title.starts_with? 'You know you'
end

EDIT 2: Got it working. 谢谢 for the help!

等等,不,我没有...我的模特名单上有什么.

def fixlistname!
  self.title = self.title.lstrip + (title.ends_with?("...") ? "" : "...")
  self.title.slice(0,1).capitalize + self.title.slice(1..-1)
  errors.add_to_base("Title must start with \"You know you...\"") unless self.title.starts_with?  'You know you'
end

EDIT 4:人try 了梅塞克的编辑,但仍然得到了undefined method `capitalize'"个错误.我可能做错了什么?

def fixlistname!
  self.title = title.lstrip
  self.title += '...' unless title.ends_with?('...')
  self.title[0] = title[0].capitalize
  errors.add_to_base('Title must start with "You know you..."') unless title.starts_with?("You know you")
end

这太奇怪了.通过使用下面的行,我能够消除未定义的方法错误.问题是它似乎用数字代替了第一个字母.例如,它不是将You中的y大写,而是将y变成121

self.title[0] = title[0].to_s.capitalize

推荐答案

Titleize将每个单词大写.

new_string = string.slice(0,1).capitalize + string.slice(1..-1)

更新:

irb(main):001:0> string = "i'm from New York..."
=> "i'm from New York..."
irb(main):002:0> new_string = string.slice(0,1).capitalize + string.slice(1..-1)
=> "I'm from New York..."

Ruby-on-rails相关问答推荐

rails中Net::STP的多文件模式

通过激励控制器正确更新Turbo帧信源

在Rails中,如何将帮助器方法添加到属性/列?

Ruby - 如何删除目录中早于 X 天的所有文件?

Rails 7 共享刺激控制器功能

如何避免 activesupport 中的循环参数引用警告

未初始化的常量 ActionDispatch::Session::EncryptedCookieStore (NameError)

如何避免 RSpec 3.0 中 stub_chain 的弃用警告?

简单表单关联自定义标签名称

如何按值按降序对哈希进行排序并在 ruby​​ 中输出哈希?

如何显示 RSpec 测试生成的 SQL 查询日志(log)?

Ruby on Rails 错误无法加载此类文件 - 更少

如果缺少翻译,则回退到默认语言

使用god 监控独角兽 - 以非零代码开始退出 = 1

设计记住我和会话

我们如何在 Rails Mailer 中设置邮箱发件人的名称?

如何从另一个调用 Capistrano 任务?

如何在 Rails 应用程序中测试 ElasticSearch (Rspec)

Postgresql JSON 数据列不同

在 Ruby on Rails 中设置日志(log)记录级别