Zum Inhalt springen

FLOW3 / MySQL

Erstellt am 9. Oktober 2010 · 3 Antworten · letzte Antwort am 28. Oktober 2010

Tags: Frage

Layh ·

Hallo zusammen,

ich habe mich nun mal hingesetzt um meine ersten Erfahrungen mit FLOW3 zu machen. Leider kann ich im Bezug aufsetzen einer Datenbank mit MySQL nicht wirklich was finden.

Ich habe meine Settings.yaml nun so angepasst dass dort die richtigen Anmeldedaten für MySQL vorhanden sind.

Die Settings.yaml sieht momentan wie folgt aus und befindet sich in Packages/Application/MyPackage/Configuration/Settings.yaml in :

MyPackage:

  persistence:

    backendOptions:
      dataSourceName: 'mysql:host=localhost;dbname=myDBName'
      username: username
      password: password

Fehler gibt es hier keine. Also zumindest werden keine Fehler ausgegeben.

Meine Frage nun, wie sage ich einem Model/Repository mit welcher Datenbanktabelle es verknüpft ist?

Alternativ wäre ich auch über jeden Link dankbar der das Thema ein wenig im Detail schreibt.

Vielen Danke schonmal.
Gruß,
Thomas

Layh ·

Wegen der Vollständigkeit hier mal mein Model und mein Repository in den entsprechenden Ordnern:

Model/Book.php

<?php
declare(ENCODING = 'utf-8');
namespace F3\MyPackage\Domain\Model;

/**
 * A book
 *
 * @scope prototype
 * @entity
 */
class Book {

	/**
	 * The book name
	 *
	 * @var string
	 */
	protected $name = '';

	public function getName() {
		return $this->name;
	}

	public function setName($name) {
		$this->name = $name;
	}

}
?>

Repository/BookRepository.php

<?php
declare(ENCODING = 'utf-8');
namespace F3\MyPackage\Domain\Repository;

/**
 * A repository for books
 */
class BookRepository extends \F3\FLOW3\Persistence\Repository {
}
?>

Und noch der StandardController

<?php
declare(ENCODING = 'utf-8');
namespace F3\MyPackage\Controller;

class StandardController extends \F3\FLOW3\MVC\Controller\ActionController {

	/**
	 * @var \F3\MyPackage\Domain\Repository\BookRepository
	 * @inject
	*/
	protected $bookRepository;

	/*
	 * index action
	 * 
	 * @return void
	 */
	public function indexAction() {
		$books = $this->bookRepository->findAll();
		$this->view->assign('book', $books);
	}
	
}

?>

Der Controller wird ausgeführt ohne irgendwelche Fehlermeldungen.

cse ·

Ich habe es genauso eingerichtet allerdings bis dato ohne Erfolg.
Das Problem ist das er bei mir acuh keinerlei Fehler oder ähnliches schmeißt.

Wenn da jemand ne Lösung gefunden hat wäre ich da auch äußerst interessiert dran ...