diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index 3af7a5296..b22954bb1 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -149,7 +149,7 @@ module ApplicationHelper File.join("images/avatars", ["#{source.class}", "#{source.id}"]) + "?t=#{ctime}" end elsif source.class.to_s == 'User' - source.letter_avatar_url + source.get_letter_avatar_url end end diff --git a/app/models/user/avatar.rb b/app/models/user/avatar.rb index 4b62c28fb..7a1a174c3 100644 --- a/app/models/user/avatar.rb +++ b/app/models/user/avatar.rb @@ -1,18 +1,23 @@ require 'letter_avatar/has_avatar' +require 'chinese_pinyin' class User module Avatar extend ActiveSupport::Concern include LetterAvatar::HasAvatar - def name - lastname.blank? ? login : Pinyin.t(lastname) + def username + self.lastname.blank? ? self.login : Pinyin.t(self.lastname) end - def letter_avatar_url(size = :lg) - avatar_url(avatar_size(size)) + def get_letter_avatar_url(size = :lg) + avatar_path(size).split('public/')&.last end + def avatar_path(size) + LetterAvatar.generate self.username, avatar_size(size) + end + # 返回头像尺寸 # xs: 22px # sm: 32px diff --git a/config/initializers/letter_avatar.rb b/config/initializers/letter_avatar.rb index 88f3851e9..3276e2a61 100644 --- a/config/initializers/letter_avatar.rb +++ b/config/initializers/letter_avatar.rb @@ -3,5 +3,5 @@ LetterAvatar.setup do |config| config.cache_base_path = 'public/system/lets' # default is 'public/system' config.colors_palette = :iwanthue # default is :google config.annotate_position = '-0+10' # default is -0+5 - config.letters_count = 2 # default is 1 + # config.letters_count = 2 # default is 1 end