No CakePHP, as regras de definições são definidas nos modelos, então como fazemos quando queremos gerar um formulário, porém esse formulário não necessariamente vai ser salvo em um banco de dados, logo não tem modelo.

Para fazer isso na verdade criamos um modelo, esse modelo usamos como citado no post anterior. Ou seja, um modelo sem tabela.

Vamos por em prática com um caso de um formulário de contato:

Criando o modelo, sem tabela no CakePHP

file contact.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
< ?php
class Contact extends AppModel {
 
	public $useTable = false;
	public $validate = array(
		'name' => array('rule' => 'notEmpty', 
						'message' => "Can't be empty the field name",
						),
		'email' => array('rule' => 'email',
						 'message' => "Put a email valid",
						),
		'message' => array('rule' => 'notEmpty', 
						'message' => "Can't be empty the field message",
						),
	);
 
}
?>

Definidos três campos a serem validados, name, email e message.

Agora na view:

1
2
3
4
5
6
7
< ?php echo $form->create('Contact', array('url' => '/contact/')); ?>
	<fieldset>
		< ?php echo $form->input('name'); ?>
		< ?php echo $form->input('email'); ?>
		< ?php echo $form->input('message'); ?>
	</fieldset>
< ?php echo $form->end('Send'); ?>

Criamos o form usando nosso modelo, onde guardamos a regra de validação, e mandamos imprimir os campos.

No controller:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
< ?php
class ContactController extends AppController {
 
	public $name = 'Contact';
	public $uses = array('Contact');
 
	public function index() {
		if (!empty($this->data)) {
			$this->Contact->set($this->data);
			if ($this->Contact->validates()) {
				//send mail
			}
		}
	}
 
}
?>

Pronto usamos o modelo para validar os campos de formulário antes de fazermos nosso envio do email de contato.

CakePHP Model sem Tabela

| julho 21st, 2009

Algumas vezes precisamos de modelos sem tabela do banco de dados, e para fazer isso no CakePHP, temos um attributo que definimos o uso ou não de tabelas no modelo:

1
2
3
4
5
6
7
< ?php
class User extends AppModel {
 
	public $useTable = false;
 
}
?>

Ocorreu nesse mês em Berlin o CakeFest3, para as pessoas como eu, que não puderam se fazer presente no evento, vale a pena da uma olhada no material das apresentações que rolaram por lá.

Para visualizar o material e fazer o download, acesse esse link.

XHTML 2 is dead

| julho 4th, 2009

O XHTML 2, está com seus dias contados, não será mais tocado o projeto adiante ao seu lugar continuará o HTML 5, e agora com o foco total em cima dele.

Isso pode ser considerado uma boa novidade, pois teremos mais pessoas envolvidas em cima de 1 projeto, além de estabelecer um padrão, não termos mais duas linguagens de marcação na WEB.

Se você tem interesse de saber como anda o HTML 5, você pode conferir aqui, nesse site contém alguns exemplos do que teremos com o HTML 5.

Navegando na internet encontrei mais uma boa opção de download de livros em geral, Além do caso específico de livros (e-books) sobre programação.

O site oferece diversos livros em formato digital (e-books) de maneira free, grátis.

Para os devotos de PHP assim como eu você tem alguns livros de free sobre a linguagem PHP.

O único detalhe que os livros em sua maioria, são em inglês, porém no caso de programação, e livros técnicos, o conhecimento ja detido facilita a leitura, possibilitando assim pessoas que não sabem inglês adquirir conhecimento do livro.

Use e abuse, é free, grátis os livros, e compartilhe informações como essas. Ajude a divulgar conhecimento.

BuscaPé, líder em comparação de preços na América Latina