sql >> Databáze >  >> RDS >> Mysql

Zobrazit aktuální data uživatele a jeho jméno ve vybraném tagu

Nevím, proč potřebujete načíst current_user ve výběrovém seznamu. Výběr v uživatelském modelu však můžete upravit následovně:

def user_for_select(user)
  self
    .where(id: user.id)
    .pluck("CASE WHEN id = #{user.id} THEN 'Me' ELSE name END AS name, id")
  end
end

Úpravy závisí na komentáři:

Přidejte do uživatelského modelu následující metodu:

def is_manager?
   self.role == "manager"
end

Poté aktualizujte výběr následovně:

def user_for_select(user)
  if user.is_manager?
      self
        .pluck("CASE WHEN id = #{user.id} THEN 'Me' ELSE name END AS name, id")
        .unshift(['All', 'all'])
  else
       self
         .where(id: user.id)
         .pluck("CASE WHEN id = #{user.id} THEN 'Me' ELSE name END AS name, id")
  end
end


  1. Google vykreslí spojitou osu x z pole php

  2. Smazat více řádků s PDO a zaškrtávacími políčky pomocí připravených výpisů?

  3. Převeďte soubor z Cp1252 na utf -8 java

  4. Při pokusu o provedení připraveného příkazu pomocí konektoru mysql python dostávám NotImplementedError