Todos os procedimentos estão corretos até agora, porém, mesmo com o uso do Bootstrap, não estou conseguindo visualizar letras com acentor e nem o 'Ç'. Será que está faltando alguma biblioteca ou é um problema com o uso do Scala?
Todos os procedimentos estão corretos até agora, porém, mesmo com o uso do Bootstrap, não estou conseguindo visualizar letras com acentor e nem o 'Ç'. Será que está faltando alguma biblioteca ou é um problema com o uso do Scala?
Oi Victor, tudo bem?
Esse problemas geralmente são por conta do charset da página.
Para uma resposta HTTP baseada em texto, é muito importante definir o charset. O Play manipula isso para você e usa o utf-8 por padrão.
Exemplo para mudar o charset:
public Result index() {
return ok("<h1>Hello World!</h1>", "iso-8859-1").as("text/html; charset=iso-8859-1");
}
Ok. Mas como vou conseguir configurar isso aqui:
@(formulario: Form[Produto])
@import b3.vertical.fieldConstructor
@main("Cadastro de produto") {
@b3.form(routes.ProdutoController.salvaNovoProduto){
<h1>Cadastrar novo produto</h1>
@b3.text(formulario("titulo"), '_label -> "Título")
@b3.text(formulario("codigo"), '_label -> "Código")
@b3.text(formulario("tipo"), '_label -> "Tipo")
@b3.textarea(formulario("descricao"), '_label -> "Descrição")
@b3.number(formulario("preco"), '_label -> "Preço")
@b3.submit('class -> "btn btn-primary") { Cadastrar }
}
}
na opção Descrição e Preço, por exemplo. Ou devo mudar algo no main?
@(title: String)(content: Html)
<!DOCTYPE html>
<html lang="en">
<head>
<title>@title</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" media="screen" href="@routes.Assets.versioned("bootstrap/dist/css/bootstrap.min.css")">
<link rel="shortcut icon" type="image/png" href="@routes.Assets.versioned("images/cna.png")">
</head>
<body>
<header class="navbar navbar-default">
<div class="container" role="presentation">
<ul class="nav navbar-nav navbar-right">
<li><a href="@routes.ProdutoController.formularioNovoProduto">Novo produto</a></li>
</ul>
</div>
</header>
<main class="container">
@content
</main>
<script type="text/javascript" src="@routes.Assets.versioned("bootstrap/dist/js/bootstrap.min.js")"></script>
</body>
</html>
Para exibir uma página HTML o navegador precisa saber o conjunto de caracteres usado na página.
Isso é especificado com a tag :
<meta charset="iso-8859-1">
Dentro da sua tag head:
<head>
<title>@title</title>
<meta charset="iso-8859-1">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" media="screen" href="@routes.Assets.versioned("bootstrap/dist/css/bootstrap.min.css")">
<link rel="shortcut icon" type="image/png" href="@routes.Assets.versioned("images/cna.png")">
</head>
Infelizmente não funcionou. Continuo vendo " � " aonde deveria estar um " é " ou um " ç ". No meu Meta eu já tinha feito a mesma alteração. Até usei esse exemplo que vi online e nada.
<meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1">
O que deve estar errado então?