TYPO3.CMS 6.2 Extension jquery.dataTables: Unterschied zwischen den Versionen
Aus Vosp.info
F (Diskussion | Beiträge) (→Verzeichnissstruktur) |
F (Diskussion | Beiträge) (→Verzeichnissstruktur) |
||
Zeile 31: | Zeile 31: | ||
*** typo3conf/ext/ncfluid/Resources/Public/ | *** typo3conf/ext/ncfluid/Resources/Public/ | ||
**** typo3conf/ext/ncfluid/Resources/Public/Stylesheets/ - styles.css | **** typo3conf/ext/ncfluid/Resources/Public/Stylesheets/ - styles.css | ||
+ | **** typo3conf/ext/ncfluid/Resources/Public/JavaScript/ - UIHelper.js | ||
= MVC = | = MVC = |
Version vom 1. März 2013, 13:24 Uhr
- Typo3 Extension jquery.dataTables.editable @deprecated mit der alten pibase-Klasse entwickeln
Ziel ist es in einer typo3 Extension eine Datenbanktabelle auszulesen und in der Oberfläche (frontend) dynamisch darzustellen und manipulierbar (add,edit,delete row) zumachen. Unterschied zur Typo3 Extension jquery.dataTables.editable @deprecated Anleitung es wird nicht das JQuery-DataTables-Data Manager plugin verwendet, sondern darauf verzichtet die Tabelle innerhalb der Tabllenanzeige zu editieren
- Hierfür werden folgende Bibliotheken verwendet
- zur Info
- Grundlagenwissen: Typo3 kickstarter Extension, typo3 Extensions entwickeln
- Grundsätzlich bevor mensch sich wundert warum wieder was nicht funzt typo3-Cache löschen und im Zweifel mal unter Adminwerkzeuge > Protokoll schauen
Inhaltsverzeichnis
Verzeichnissstruktur
- typo3conf/ext/ncfluid - ext_emconf.php ext_localconf.php ext_tables.sql ext_icon.gif ext_tables.php locallang_db.xml tx_ncfluid_domain_model_table.gif
- typo3conf/ext/ncfluid/Classes
- typo3conf/ext/ncfluid/Classes/Controller/ - TableController.php
- typo3conf/ext/ncfluid/Classes/Domain/
- typo3conf/ext/ncfluid/Classes/Domain/Model/ - Table.php
- typo3conf/ext/ncfluid/Classes/Domain/Repository/ - TableRepository.php
- typo3conf/ext/ncfluid/Configuration/
- typo3conf/ext/ncfluid/Configuration/TCA/ - Table.php
- typo3conf/ext/ncfluid/Configuration/TypoScript/ - constants.txt setup.txt
- typo3conf/ext/ncfluid/Resources/
- typo3conf/ext/ncfluid/Resources/Private/
- typo3conf/ext/ncfluid/Resources/Private/Language/ - locallang.xml
- typo3conf/ext/ncfluid/Resources/Private/Layouts/ - main.html
- typo3conf/ext/ncfluid/Resources/Private/Partials/ - tablerowForm.html
- typo3conf/ext/ncfluid/Resources/Private/Templates/
- typo3conf/ext/ncfluid/Resources/Private/Templates/Table/ - edit.html index.html new.html show.html
- typo3conf/ext/ncfluid/Resources/Public/
- typo3conf/ext/ncfluid/Resources/Public/Stylesheets/ - styles.css
- typo3conf/ext/ncfluid/Resources/Public/JavaScript/ - UIHelper.js
- typo3conf/ext/ncfluid/Resources/Private/
- typo3conf/ext/ncfluid/Classes
MVC
Datenmodell
View
Controller
Notizen
- statische template "Fluid - Default Ajax Configuration" einbinde wird u.a. jquery ins template eingebunden
Probleme
Fatal error: Call to a member function replaceObject() on a non-object in typo3/sysext/extbase/Classes/Persistence/Repository.php on line 222
folgendes löst das Problem, weiß aber nicht genau ob das nicht anders besser geht:
Tx_Ncfluid_Domain_Repository_TableRepository wird nicht über initializeAction() genutzt, sondern extra noch mal geladen
class Tx_Ncfluid_Controller_TableController
extends Tx_Extbase_MVC_Controller_ActionController {
// ....
public function updateAction(Tx_Ncfluid_Domain_Model_Table $tablerow) {
$objectManager = t3lib_div::makeInstance('Tx_Extbase_Object_ObjectManager');
$tableRepository = $objectManager->get('Tx_Ncfluid_Domain_Repository_TableRepository');
$tableRepository->update($tablerow);
// alter code führte zur Fehlermeldung;
// @see initializeAction -- $this->tableRepository =& t3lib_div::makeInstance('Tx_Ncfluid_Domain_Repository_TableRepository');
// $this->tableRepository->update($tablerow);
// $this->flashMessageContainer->add('Your tablerow was updated.');
$this->redirect('index');
}
// ....