Os models são formas práticas de referencias uma tabela do banco de dados dentro do projeto possibilitando (através do eloquent) que haja uma usabilidade e tratamento simples dos dados.
A simples criação do model já estabelece uma conexão, no exemplo acima o model Product está se conectando com a tabela products do banco de dados e considerando que a chave primária será a coluna id. Contudo, existe a chance que seu projeto não siga essa convenção e (talvez) a chave primária seja cd_product, nesses casos será necessário personalizar o model:
Também é possível criar alias para melhorar a leitura do código, certamente é mais prático ler $product->name ou $product->id ao invés de $product->nm_product ou $product->cd_product (respectivamente). Para resolver essa situação é necessário adicionar algumas novas linhas o model:
use \App\Models\Product;
class Product {
public function getProduct() {
return Product::find(1);
}
public function getProducts() {
return Product::all();
}
}