Você está aqui: Ruby On Rails ::: Dicas & Truques ::: Model |
|
Como passar objetos inteiros de classes Model para a Action ViewQuantidade de visualizações: 8310 vezes |
|
Muitas vezes precisamos ter acesso a objetos inteiros a partir de nossas views RoR, e não somente às variáveis de instância dos controladores. Esta dica mostra como isso pode ser feito. Considere o seguinte Model:# Definição da classe Pessoa class Pessoa # permite definir o nome da pessoa def definir_nome(nome) @nome = nome end # permite obter o nome da pessoa def obter_nome @nome end # permite definir a idade def definir_idade(idade) @idade = idade end # permite obter a idade def obter_idade @idade end end Veja agora como criamos uma nova instância desta classe em um controlador: class TesteModelController < ApplicationController # vamos definir uma action chamada index def index # vamos usar o model Pessoa pessoa = Pessoa.new pessoa.definir_nome("Osmar J. Silva") pessoa.definir_idade(37) # vamos passar o objeto pessoa inteiro para # a ActionView @pessoa = pessoa end end Note que agora temos uma variável de instância @pessoa que representa um objeto da classe Pessoa. Veja como esta variável é acessada na view: <html> <head> <title>Estudos Ruby On Rails</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> </head> <body> O nome da pessoa é: <%= @pessoa.obter_nome %><br> A idade da pessoa é: <%= @pessoa.obter_idade %> </body> </html> Ao usar esta abordagem nós conseguimos chamar métodos da classe Model diretamente da Action View. Para algumas aplicações esta prática é muito importante. Não abuse. O papel da view é conversar com o controller, desconhecendo completamente a estrutura dos models, seus métodos e variáveis. Esta é uma regra que deve ser quebrada com muita prudência. |
|
Link para compartilhar na Internet ou com seus amigos: | |
VB.NET ::: Dicas & Truques ::: Strings e Caracteres |
Como inverter uma string em VB.NET usando a função StrReverse()Quantidade de visualizações: 10523 vezes |
Em algumas situações nós precisamos inverter a ordem dos caracteres de uma palavra, frase ou texto em VB.NET. Para isso nós podemos usar a função StrReverse(). Veja um exemplo completo de seu uso: Imports System Module Program Sub Main(args As String()) Dim frase As String = "Gosto de VB.NET" ' vamos mostrar a frase original Console.WriteLine("A frase original é: " & frase) ' vamos inverter a string frase = StrReverse(frase) ' mostramos a frase invertida Console.WriteLine("A frase invertida é: " & frase) Console.WriteLine(vbCrLf & "Pressione qualquer tecla para sair...") ' pausa o programa Console.ReadKey() End Sub End Module Ao executar este código VB.NET nós teremos o seguinte resultado: A frase original é: Gosto de VB.NET A frase invertida é: TEN.BV ed otsoG |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Programação Orientada a Objetos |
Exercícios Resolvidos de Java - Programação Orientada a Objetos - Uma classe Temperatura que converte graus Celsius em Fahrenheit e vice-versaQuantidade de visualizações: 6824 vezes |
Exercício Resolvido de Java - POO - Programação Orientada a Objetos - Uma classe Temperatura que converte graus Celsius em Fahrenheit e vice-versa Pergunta/Tarefa: Escreva uma classe Java chamada Temperatura que converterá graus Celsius em Fahrenheit e vice-versa. Esta classe não possuirá nenhuma variável, nem de instância nem de classe, somente dois métodos, que deverão ter as seguintes assinaturas: double celsiusParaFahrenheit(double) double fahrenheitParaCelsius(double) Para facilitar a resolução, seguem abaixo as regras de conversão: Celsius para Fahrenheit: F = (1,8 x C) + 32 Fahrenheit para Celsius: C = (F - 32) / 1,8 Depois de escrever a classe Temperatura, use o método main() da classe principal da aplicação Java para testar suas funcionalides. Sua saída deverá ser parecida com: Resposta/Solução: Veja a resolução comentada deste exercício usando Java console: Código para a classe Temperatura.java: package arquivodecodigos; public class Temperatura { // converte de Celsius para Fahrenheit public double celsiusParaFahrenheit(double c){ double f = (1.8 * c) + 32; return f; } // converte de Fahrenheit para Celsius public double fahrenheitParaCelsius(double f){ double c = (f - 32) / 1.8; return c; } } Código para a classe Principal.java: package arquivodecodigos; import java.util.Scanner; public class Principal{ public static void main(String args[]){ // vamos criar um objeto da classe Temperatura Temperatura t = new Temperatura(); // vamos fazer a leitura do usuário Scanner entrada = new Scanner(System.in); // primeiro de Celsius para Fahrenheit System.out.print("Informe o grau em Celsius: "); double celsius = Double.parseDouble(entrada.nextLine()); System.out.println(celsius + " graus Celsius equivale a " + t.celsiusParaFahrenheit(celsius) + " graus Fahrenheit."); // agora de Fahrenheit para Celsius System.out.print("Informe o grau em Fahrenheit: "); double fahrenheit = Double.parseDouble(entrada.nextLine()); System.out.println(celsius + " graus Fahrenheit equivale a " + t.fahrenheitParaCelsius(fahrenheit) + " graus Celsius."); } } |
Python ::: Dicas & Truques ::: Data e Hora |
Python para iniciantes - Como obter o ano com quatro dígitos usando PythonQuantidade de visualizações: 7269 vezes |
Em algumas situações nós precisamos obter apenas o ano de uma determinada data, e com quatro dígitos. Para isso só precisamos passar o indicador "%Y" para a função strftime() da linguagem Python. Veja o exemplo completo: from datetime import datetime # função principal do programa def main(): # Obtém um datetime da data e hora atual hoje = datetime.today() # Exibe o ano com quatro dígitos print(hoje.strftime("O ano é: %Y")) if __name__== "__main__": main() Ao executarmos este código nós teremos o seguinte resultado: O ano é: 2021 |
Delphi ::: Dicas & Truques ::: Arquivos e Diretórios |
Como excluir um arquivo em Delphi usando a função DeleteFile()Quantidade de visualizações: 31176 vezes |
Em algumas situações nossas aplicações precisam excluir arquivos. Para isso o Delphi nos fornece a função DeleteFile(), presente na unit SysUtils. Esta função recebe o caminho e nome do arquivo a ser excluído e retorna true se a exclusão foi feita com sucesso e false em caso contrário. Veja um trecho de código no qual excluímos um arquivo chamado "dados.txt": procedure TForm1.Button1Click(Sender: TObject); var arquivo: string; begin // diretorio e nome do arquivo arquivo := 'C:\arquivo de codigos\dados.txt'; // vamos remover o arquivo if DeleteFile(arquivo) then ShowMessage('O arquivo foi excluído com sucesso') else ShowMessage('Não foi possível excluir o arquivo'); end; Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009. |
Python ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas |
Como converter radianos em graus na linguagem PythonQuantidade de visualizações: 4945 vezes |
Todos os métodos e funções trigonométricas em Python recebem seus argumentos em radianos, em vez de graus. Um exemplo disso é a função sin() do objeto math, no módulo math. Esta função recebe o ângulo em radianos e retorna o seu seno. No entanto, há momentos nos quais precisamos retornar alguns valores como graus. Para isso é importante sabermos fazer a conversão de radianos para graus. Veja a fórmula abaixo: \[Graus = Radianos \times \frac{180}{\pi}\] Agora veja como esta fórmula pode ser escrita em código Python: import math # função principal do programa def main(): # valor em radianos radianos = 1.5 # obtém o valor em graus graus = radianos * (180 / math.pi) # mostra o resultado print(radianos, "radianos convertidos para", "graus é", graus) if __name__== "__main__": main() Ao executarmos este código Python nós teremos o seguinte resultado: 1.5 radianos convertidos para graus é 85.94366926962348 Para fins de memorização, 1 radiano equivale a 57,2957795 graus. Por fim, saiba que a linguagem Python nos oferece o método math.degrees() que nos permite converter ângulos radianos em graus. Meu propósito nesta dica foi mostrar a você como o cálculo de conversão pode ser escrito em Python. Em outras dicas dessa seção abordaremos o método math.degrees(). |
Desafios, Exercícios e Algoritmos Resolvidos de Python |
Veja mais Dicas e truques de Python |
Dicas e truques de outras linguagens |
Códigos Fonte |
Software de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais |
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais |
Linguagens Mais Populares |
1º lugar: Java |