Skip to content
Snippets Groups Projects

Resolve "Dokumentation aktualisieren"

Merged slobinger requested to merge 16-update-documentation into master
1 file
+ 99
2
Compare changes
  • Side-by-side
  • Inline
+ 99
2
@@ -84,8 +84,105 @@ gezogen werden.
### SAMSApp
**TODO**
#### Methoden
##### Konstruktor
Minimalistischste App:
```python
app = SAMSApp(name = 'appname', manifest = {'default_language': 'en'}
, langDict = {'en':{}})
```
Eine SAMSApp benötigt name (name des python packages oder moduls der app),
langDict und manifest. Das Dictionary vom manifest muss eine default_language
definieren, die im langDict enthalten ist.
Eine derart definierte App beinhaltet keine views und keinen Proxy, macht also
relativ wenig Sinn.
In der Regel wird eine SAMSApp eher so aussehen:
```python
app = SAMSApp(
manifest = {
'default_language': 'en',
'views': [{'url': 'test/do_nothing', 'function': 'views.do_nothing'}],
'menu':[
{'url': '',
'name_string': menu_main},
{'url': 'topic', 'name_string': 'menu_topic',
'menu':[
{'url': 'topic/subtopic01',
'name_string': 'menu_topic_subtopic01'},
{'url': 'topic/subtopic02',
'name_string': 'menu_topic_subtopic02'}
]
}
]
}, name = 'test.app',
langDict={'en': {'menu_main': 'Home', 'menu_topic': 'Topic',
'menu_topic_subtopic01': 'Subtopic 01',
'menu_topic_subtopic02': 'Subtopic 02'},
'de':{'menu_main': 'Startseite'}
}
)
```
##### lang
```python
langDict = app.lang(langCode = 'de')
```
Gibt ein Dictionary für die angeforderte Sprache zurück. Sind Einträge im default
dictionary und nicht in der Angeforderten Sprache vorhanden, werden diese verwendet.
##### menu
```python
# mandatory
menuEntries = SAMSApp.menu(langCode = 'de')
# optional
menuEntries = SAMSApp.menu(langCode = 'de', urlPrefix = '/app/')
```
Gibt eine Liste von Menüeinträgen zurück. Jeder Eintrag ist ein Dictionary.
Dieses Dictionary enthält immer 'url' und 'name' und kann außerdem wieder
über 'menu' ein Menü enthalten. Der Anzeigename ('name') ist entweder der zu
langCode passende oder der, der defaultSprache.
#### Eigenschaften
##### module
Das zur App gehörende python Modul. Führt zu einer Exception falls das
Modul nicht geladen werden kann,
##### name
Der Name der app.
##### blueprint
Das flask Blueprint der app.
##### manifest
Das manifest Dictionary. Hier wird folgendes festgelegt:
- Standardsprache über ```default_language```
- Menüeinträge über ```menu```
- URL View regeln über ```views```
- proxies
Die Menüeinträge bestehen jeweils aus einem Eintrag 'url' und dem 'name_string'
Die zeichenkette in 'name_string' wird über einen Eintrag im langDict aufgelöst.
Eine View besteht aus 'url' und dem Namen der function in 'function'.
Die ist eine Liste von Proxy definitionen. Die Proxydefinition wird als proxySpec
für SAMSProxy verwendet.
##### proxies
Eine Liste an SAMSProxy Objekten erzeugt aus den Spezifikationen im Manifest.
### SAMSProxy
### SAMProxy
**TODO**
\ No newline at end of file
Loading