Ergebnis 1 bis 6 von 6

Thema: bei eigenem Content nach eigenem Wert suchen/sortieren

  1. #1
    Meister(in)
    Registriert seit
    15.03.2006
    Beiträge
    316
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard bei eigenem Content nach eigenem Wert suchen/sortieren

    Hallo und Guten Morgen,

    ich stehe momentan vor einem, für mich größerem Problem, weil ich das noch nie gebraucht habe...

    Ich habe ein eigenes Produkt gebastelt, das will ich auf einer Seite geordnet ausgeben.

    Mein CT besteht aus folgenden Felder:
    Title (kommt von Plone)
    Vorname
    Nachname
    Abteilung

    Wie kann ich Plone sagen, ich will die Ausgabe nach Nachnamen sortieren?
    Und nimm nur Mitarbeiter die in der Abteilung "EDV" sind?

    Hier die Ausgabe momentan:
    Code:
    <html xmlns="http&#58;//www.w3.org/1999/xhtml" xml&#58;lang="en"
          lang="en"
          metal&#58;use-macro="here/main_template/macros/master"
          i18n&#58;domain="plone">
    <body>
    
    <div metal&#58;fill-slot="main">
    
    	<tal&#58;main-macro metal&#58;define-macro="main" 
    	tal&#58;omit-tag="">
    
    	<div metal&#58;use-macro="here/document_actions/macros/document_actions">
    		Document actions &#40;print, sendto etc&#41;
    	</div>
    	
    	<h1 i18n&#58;translate="The team in alphabetical order">The team in alphabtical order</h1>
    	
    	<div tal&#58;define="results python&#58;container.portal_catalog&#40;portal_type='Mitarbeiter',
                                                                     sort_on='created',
                                                                     sort_order='reverse',
                                                                     review_state='published'&#41;;
                             Batch python&#58;modules&#91;'Products.CMFPlone'&#93;.Batch;">
    	
    		<tal&#58;batch tal&#58;condition="results"
    				   tal&#58;define="batch results;">
    
    			<div tal&#58;repeat="obj results">
    
    				<div tal&#58;define="oddrow repeat/obj/odd"
    					 tal&#58;attributes="class python&#58;test&#40;oddrow, 'portletContent even', 'portletContent odd'&#41;">
    
    					<div tal&#58;define="object obj/getObject">
    						<tal&#58;if condition="object/getVorname">
    							<span tal&#58;content="object/getNachname" />, <span tal&#58;content="object/getVorname" /> - <a tal&#58;attributes="href obj/getPath"><span tal&#58;content="obj/Title" /></a>
    						</tal&#58;if>
    					</div>
    
    				</div>
    
    			</div>
    
    		</tal&#58;batch>
    	
    	</div>
    
    	</tal&#58;main-macro>
    
    </div>
    </body>
    </html>
    Also nochmal kurz, ausgeben sort_on = Nachname und (in einer anderen Seite) ausgeben, wenn Abteilung = EDV

    Was vielleicht noch interessant sein könnte, ich arbeite hauptsächlich mit "Poseidon".

    Das sollte ich jetzt auch noch erwähnen, ich will eine "automatische" Indexiereung, sh. ich will nicht manuell in portal_catalog einen neuen FieldIndex anlegen!!!

    lg michi
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    Meister(in)
    Themenstarter

    Registriert seit
    15.03.2006
    Beiträge
    316
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Hier ist mein Produkt, inklusive Model (Poseidon + .xmi)

    vielleicht hilft das...
    Angehängte Dateien Angehängte Dateien

  3. #3
    Meister(in)
    Themenstarter

    Registriert seit
    15.03.2006
    Beiträge
    316
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Der Ablauf wie er momentan ist /sein soll:

    - erstelle Organisation
    - erstelle Abteilung / Studiengang
    - erstelle Mitarbeiter
    ------ wähle bei Mitarbeiter die passende Abteilung, bzw Studiengang
    --- fertig


    Bei der Organisation ( /skins/mitarbeiter/mitarbeiter_all.cpt ) sollen alle vorhandenen Mitarbeiter nach Nachname sortiert werden können......

    Bei Abteilung/Studiengang ( /skins/mitarbeiter/mitarbeiter_team.cpt ) sollen alle Mitarbeiter angezeigt werden die die jeweilige Abteilung /Studiengang haben....
    Zuerst der Abteilungsleiter, dann der Stellvertreter, dann alle anderen...

    Es fehlt eigentlich noch alles bei mitarbeiter_team, weil ich keine ahnung habe wie ich das Zeug auslesen kann.

    Bei mitarbeiter_all, alle Mitarbeiter nach Nachname sortieren geht ja, will ich zwar nich so, (portal_catalog - > FieldIndex ) soll ja auch funktionieren wenn ich das ganze auf einem anderen Rechner installiere, also automatisch

    ... hoffe man hat jetzt verstanden was ich will


    mfg michi

  4. #4
    Kaiserliche Hoheit
    Registriert seit
    22.02.2005
    Beiträge
    1.558
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Hallo mgraf,
    ich kenne die Lösung, habe das jedoch auch noch nie gemacht. Die Lösung heißt: AdvancedQuery. Somit sind Anfragen möglich, die man nach mehr wie einem Kriterium sortieren kann. Dies bedeutet der portal_catalog() - Part muss in ein AdvancedQuery geändert werden.

    Wenn du Glück hast schreibt dir Maik noch n paar Zeilen dazu. Sonst selbst einarbeiten oder warten.
    http://www.dieter.handshake.de/pypro...#AdvancedQuery
    und
    http://www.dieter.handshake.de/pypro...ncedQuery.html

    Torty
    "Carpe Diem" powered by positiv Feelings

  5. #5
    Interessierte/r Avatar von derstappenit
    Registriert seit
    04.09.2006
    Ort
    Leipzig
    Beiträge
    132
    Danke
    0
    Bekam 3 mal "Danke" in 3 Postings

    Standard

    Hallo,

    hier mal ein bisschen code von mir, das hilft dir sicher weiter:
    im ZPT:
    <div metal:fill-slot="main" id="content-register"
    tal:define="results python:here.nanoAdvancedSearchItems(request);
    results python:[r for r in results if r.getObject()];
    Batch python:modules['Products.CMFPlone'].Batch;
    b_start python:request.get('b_start',0);
    searchterm request/NanoSearch|nothing;">

    dann mein script "nanoAdvancedSearchItems.py":

    ## Script (Python) "nanoAdvancedSearchItems"
    ##bind container=container
    ##bind context=context
    ##bind namespace=
    ##bind script=script
    ##bind subpath=traverse_subpath
    ##parameters= request
    ##title=
    ##
    from Products.AdvancedQuery import Eq, Between, Le, In, And, MatchRegexp

    portalTypes = []
    queries = []


    if hasattr(request, 'NanoSearchUnternehmen'):
    portalTypes += ['Unternehmen']

    if hasattr(request, 'NanoSearchHochschulen'):
    portalTypes += ['Hochschule']


    queries.append(In('portal_type', portalTypes))
    queries.append(Eq('review_state','published'))

    if hasattr(request, 'Organisationsform') and request["Organisationsform"][0] != '':
    queries.append(MatchRegexp('getOrganisationsform', request["Organisationsform"]))

    if hasattr(request, 'Kompetenzrolle') and request["Kompetenzrolle"][0] != '':
    queries.append(MatchRegexp('getKompetenzrolle', request["Kompetenzrolle"]))

    if hasattr(request, 'Branchen') and request["Branchen"][0] != '':
    queries.append(MatchRegexp('getBranchen', request["Branchen"]))

    if hasattr(request, 'Technologie') and request["Technologie"][0] != '':
    queries.append(MatchRegexp('getTechnologie', request["Technologie"]))

    if hasattr(request, 'Eigenschaften') and request["Eigenschaften"][0] != '':
    queries.append(MatchRegexp('getEigenschaften', request["Eigenschaften"][0]))

    if hasattr(request, 'searchterm') and request["searchterm"] != '':
    queries.append(Eq('SearchableText', request["searchterm"]))




    query = And(*queries)
    results = context.portal_catalog.evalAdvancedQuery(query, (('sortable_title'), 'getProfessor', 'getFachbereich'))

    return results





    Die Sortierung geht dann in folgender Reihenfolge:
    1. sortable_title
    2. getProfessor
    3. getFachbereich

    die indexe müssen natürlich als fieldindex vorhanden sein.
    Das kannst du dir dann so umschreiben wie du möchtest.

    mfg maik

  6. #6
    Meister(in)
    Themenstarter

    Registriert seit
    15.03.2006
    Beiträge
    316
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard

    Dankeschön... werds heute abend versuchen...

Ähnliche Themen

  1. Spiele mit eigenem Highscore auf die HP?!
    Von pyroforjc im Forum HTML & CSS Forum
    Antworten: 1
    Letzter Beitrag: 18.02.2007, 19:58
  2. Umzug von Rapidforum nach phpBB auf eigenem Webspace
    Von jochem im Forum Webanwendungen - Webapplikationen
    Antworten: 4
    Letzter Beitrag: 01.11.2006, 12:28
  3. typo3 in verbindung mit eigenem php script
    Von iskdjim im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 3
    Letzter Beitrag: 06.10.2006, 18:00
  4. automatische Weiterleitung nach eigenem Post
    Von Torty im Forum Forum-Hilfe.de intern
    Antworten: 19
    Letzter Beitrag: 27.09.2006, 01:56
  5. webtemplate mit eigenem banner?
    Von tc4racer im Forum HTML & CSS Forum
    Antworten: 3
    Letzter Beitrag: 19.07.2005, 16:39

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •