【问题标题】:Name capitalization in devise设计中的名称大写
【发布时间】:2013-06-05 18:20:00
【问题描述】:

我的名字大写有问题。我应该使用 before_save 回调吗? 我在设计生成的模型中添加了 2 列 - first_name 和 last_name。现在怎么办?请帮忙:)

【问题讨论】:

    标签: ruby-on-rails devise ruby-on-rails-4


    【解决方案1】:

    您不必做任何事情before_save,尽管这是一个选项。我通常做的是在用户模型上创建一个方法来提供这个功能。喜欢:

      # models/user.rb
      def capitalize_name
        "#{first_name.capitalize} #{last_name.capitalize}"
      end
    

    然后在任何你想使用它的地方使用:

      current_user.capitalize_name
    

    或者任何 current_user 对象是 .capitalize_name

    【讨论】:

      【解决方案2】:

      如果您希望名称在数据库中大写并且不想在视图中的任何位置调用 capitalize_names,则可以使用 before_save。

      before_save :capitalize_names
      
      def capitalize_names
        first_name.capitalize!
        last_name.capitalize!
      end
      

      【讨论】:

      • 我把它放在哪里?我正在使用设计,我没有看到用户控制器;/
      • 你应该有一个用户模型或类似的东西吧?
      猜你喜欢
      • 1970-01-01
      • 2021-09-16
      • 1970-01-01
      • 2010-11-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-01-13
      • 2011-04-29
      相关资源
      最近更新 更多