pomoc s vytvorenim modelu ve 2.0.6
- thcom
- Backer | 95
ahoj, opet jsem za blba, od rana se tu marne snazim vytvorit model abycg mohl pracovat s DB
vychazim z aktualniho sandboxu
v configu mam
database:
dsn: ‚mysql:host=localhost;dbname=katastr‘
user: ‚katastr‘
password: ‚veslo‘
services:
authenticator: Authenticator
# database: @Nette\Database\Connection
model: model
tady uz jsem zkousel ledacos …
model vypada takto
<?php
class model extends Nette\Object {
private $database;
public function __construct(Nette\Database\Connection $database) {
$this->database = $database;
}
public function getObce(){
return $this->database->table('obce');
}
}
?>
a v presenteru …
<?php
public function renderDefault()
{
$model = new model;
$this->template->obce = $model->getObce()->fetchAll();
?>
a zarve mi to v modelu v __construct
ze chce instance of Nette\Database\Connection ale dostal none :(
mrzi me ze zase otravuju, ale ja se k tomu dostanu jednou za cas a dost veci
se meni, chapu ze k lepsimu, ale nejka to nestiham
poctive jsem hledal na foru i a webu, ale
https://doc.nette.org/cs/configuring
ani
https://doc.nette.org/cs/database
mi nepomohlo, nechci pouzivat repository, jenom takovy oldschool jako je SELECT fld FROM tbl … apod …
skoda ze toto neni soucasti sandboxu nebo nejakeho prikladu :(
dekujii za porady TH
- Jan Endel
- Člen | 1016
Vezmi si tento config neon:
common:
parameters:
php:
date.timezone: Europe/Prague
# zlib.output_compression: yes
nette:
application:
errorPresenter: Error
database:
dsn: 'mysql:host=localhost;dbname=test'
user: katastr
password: veslo
session:
expiration: 14 days
services:
authenticator: Authenticator
model: model
factories:
production < common:
development < common:
btw, názvy tříd by měly VŽDY začínat velkým písmenem. a nedávej nikdy na fóru svá hesla.
Editoval pilec (22. 10. 2012 14:48)
- Marek Šneberger
- Člen | 130
V presenteru:
$this->template->obce = $this->context->model->getObce()->fetchAll();
Akorát doporučuju přepsat „model“ na „obce“. Pokud nehodláš mít všechny metody v jednom souboru
- thcom
- Backer | 95
diky moc za rady,
hledal jsem totiz stale chybu v konfigu a pritom tam nema byt to $model =
new Model;
ale $this->context->model->getObce()->fetchAll();
jinak co se tyce hesla ja ho zmenil nez jsem ho tam dal, spravne heslo je
superbezpecne aaa :)
vzhledem tomu, ze je to na localhostu, tak jsem to neresil, ale jinak chapu, ze
je lepsi upozornit nez aby tu nekdo odhalil produkci pristup :)
@Marek Šneberger je to malinkata aplikace takze to mam zatim v 1 souboru, ale jinak tvuj komentar mi vlastne donakopl, jak to ma byt
DEKUJI !
- Marek Šneberger
- Člen | 130
OK3 napsal(a):
Tak může
Může, ale je to zbytečný (a prostě fuj :-)), když tu máme Autowiring :)