sql >> Database >  >> RDS >> Mysql

Toon de gegevens van de huidige gebruiker en zijn naam in select tag

Ik weet niet waarom je de huidige_gebruiker in de geselecteerde lijst moet laden. Maar u kunt de selectie in het gebruikersmodel als volgt aanpassen:

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

Bewerken afhankelijk van commentaar:

Voeg de volgende methode toe aan het gebruikersmodel:

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

Werk vervolgens de selectie als volgt bij:

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. Hoe specifieke waarden in een Oracle-databasekolom te vervangen?

  2. Nieuwe Microsoft Access-functies komen eraan!

  3. Java Spring JPA Paginering Werkt niet als er meer dan één pagina is

  4. hoe meerdere afbeeldingen (blob) van mysql weer te geven met php?