Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

breno2019

Ajuda ruby on rails: salvar sessão

Recommended Posts

Eu tenho uma tabela Empresa e outra tabela Usuário, a chave estrangeira da empresa está no usuário pois uma empresa possui vários usuários. E eu pretendo usar a gem DEVISE na tabela de empresa para que só quem pode cadastrar um novo usuário seja quem está logado, pra isso, dentro do cadastro usuário vou mandar o id da empresa que esta logada, pro cadastro do usuário, ou seja vou mandar o id direto quando clicar em cadastrar, não vou escolher a empresa.

OBS: creio que eu tenha que guardar as informações da empresa logada numa sessão, daí no momento do cadastro de usuário, mandar o id da empresa. A lógica é essa, mas como faço isso? pois sou novo no rails e não conheço todos os recursos do framework.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia Breno!
Creio que o resumo da sua pergunta seja como obter o id do usuário corrente(que no seu caso será empresa) para salvar na tabela de usuário né ?!

Se for isso mesmo, o Devise disponibiliza alguns filters e helpers que você pode usar em qualquer controller/view.

Um deles é o current_user(mas no seu caso será current_empresa).

Esse helper refere-se à empresa conectada atualmente.

 

OBS: Lembrando que você precisa adicionar um before_filter em seus controllers para que o devise faça a autenticação e disponibilização dos filters e helpers. Para configurar,  basta incluir em seu controller:

before_filter :authenticate_empresa! 

Com isso, na action(método) create do seu controller de Usuario(usuarios_controller.rb), você poderá criar o usuário da seguinte maneira:

def create
...
   current_empresa.usuarios.create(params[:NomeDoParametro])
ou 
  Usuario.create(empresa_id: empresa_current.id,  ...) 
...
end

 

Aconselho você ler a documentação do Devise no github.

https://github.com/plataformatec/devise#controller-filters-and-helpers

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por Alkindar33
      Ultimamente tenho ficado em dúvida sobre o futuro das linguagens em relação a mercado de trabalho, eu trabalho atualmente com NodeJS mas sinto que a linguagem está se reproduzindo como coelho em termos de desenvolvedores aprendendo ela e por causa da lei de oferta do mercado tende a se pagar menos e etc e não estou muito contente com a linguagem em si. Mas tenho dúvida de qual linguagem escolher para conseguir melhores salários e qual deve crescer mais a longo prazo. Linguagens que eu vi para Web: Go, Elixir, Ruby e Rust.
      Alguém tem alguma ideia de qual pode ser uma boa linguagem para focar o aprendizado?
    • Por dayvidham
      Olá, atualmente faço parte de uma comunidade brasileira que está imersa em um projeto DeFi de um Token que roda na rede BSC.
      Temos um Token chamado SkyRocketSR criado a 31 dias e ja somos mais de 5000 pessoas interessadas no seu sucesso.
      Estamos em busca de programadores, designers e todos que poderem somar à comunidade de alguma forma.
      Alguém gostaria de saber mais do projeto e quem sabe compor a equipe da linha de frente já que somos uma comunidade?
      Obrigado e contamos com você.

      https://skyrocketsr.com/en/

      Aqui há mais sobre nós!
    • Por dayvidham
      Olá, atualmente faço parte de uma comunidade brasileira que está imersa em um projeto DeFi de um Token que roda na rede BSC.
      Temos um Token chamado SkyRocketSR criado a 31 dias e ja somos mais de 5000 pessoas interessadas no seu sucesso.
      Estamos em busca de programadores, designers e todos que poderem somar à comunidade de alguma forma.
      Alguém gostaria de saber mais do projeto e quem sabe compor a equipe da linha de frente já que somos uma comunidade?
      Obrigado e contamos com você.

      https://skyrocketsr.com/en/

      Aqui há mais sobre nós!
    • Por dayvidham
      Olá, atualmente faço parte de uma comunidade brasileira que está imersa em um projeto DeFi de um Token que roda na rede BSC.
      Temos um Token chamado SkyRocketSR criado a 31 dias e ja somos mais de 5000 pessoas interessadas no seu sucesso.
      Estamos em busca de programadores, designers e todos que poderem somar à comunidade de alguma forma.
      Alguém gostaria de saber mais do projeto e quem sabe compor a equipe da linha de frente já que somos uma comunidade?
      Obrigado e contamos com você.

      https://skyrocketsr.com/en/

      Aqui há mais sobre nós!
    • Por Ross Risso
      Olá pessoal!
      Estou com problemas para inserir as compras no banco de dados.
      até aqui funciona, mas se tendo adicionar outros dados ele não aceita. Só permite adicionar $id e $qtd. Ainda tenho que adicionar o ID do pedido e o valor da mercadoria. Alguém poderia me ajudar?
          <?php   foreach($_SESSION['carrinho'] as $id => $qtd){              $sql = "INSERT INTO tbldetped (MercDetPed, QuantDetPed) VALUES ('$id','$qtd')";         $qr = mysqli_query($conn, $sql);          } ?>
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.