Ver también:
Las URLs pueden organizarse según:
¿El parámetro <db>, presente en todas las URLs, podría ser guardado como variable de la sesión? Tal vez podría estar implícito, mediante archivo de configuración, o como parte del dominio (e.g. bibima.opac.uns.edu.ar).
Si tuviéramos subcatálogos, el nombre del subcatálogo debería ser otro parámetro en la URL.
¿El contexto de un registro (la lista de registros a la que pertenece) se puede almacenar en la sesión?
Ver cómo Django maneja la paginación de listas.
Templates:
Aux functions (based on existing *.pfts and *.xis):
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- URL Response / Comments Views (functions) Templates ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Root: / No db specified, show menu of available dbs? Search forms: /<db>/search/<form_type>/ search_form() form-simple.html, form-advanced.html /<db>/search/ Redirect to /<db>/search/simple/ /<db>/ Idem Retrieve headings: /<db>/browse-head/<index>/[<term>]/ Paginated list of headings. browse_headings() heading_list.html, heading.html Default: term = start of index /<db>/kw-in-head/<index>/<query>/ Paginated list of headings, or suggestions. match_kw_in_heading() heading_list.html, suggestions.html Title browse ?? Retrieve lists of bib records: /<db>/kw-in-bib/<type/field>/<query>/[sortBy]/ Paginated list of bib records, or suggestions. match_kw_in_bib() bib-record_list.html, bib-record-mini.html, suggestions.html /<db>/head-in-bib/<index>/<heading>/[sortBy]/ Paginated list of bib records. match_heading_in_bib() bib-record_list.html, bib-record-mini.html /<db>/class-in-bib/<class_code>/[sortBy]/ Paginated list of bib records. match_class_in_bib() bib-record_list.html Browse catalog (shelves): /<db>/browse-catalog/<browseMfn>/ Paginated list of bib records, sorted by call number browse_catalog() bib-record_list.html, bib-record-mini1.html /<db>/browse-catalog/<browseTerm>/ Paginated list of bib records, sorted by call number browse_catalog() bib-record_list.html, bib-record-mini1.html Classification browse/search: /<db>/browse-class/[<tree_level>]/[<class_code>]/ List of class codes. Default: tree_level=1 browse_class() class_list.html, msc_home.html, msc.html /<db>/kw-in-class/<query>/ List of matching class codes, or suggestions. match_kw_in_class() class_list.html, msc.html Bib record details: /<db>/bib-record/<curr>/<total>/<search-id>/[<style>]/ Detail view of bib record, with navigation links to bib_record_detail() bib-record_detail.html, bib-record-modular.html, bib-record-aacr.html, bib-record-etiquetado.html, bib-record-marc.html, ... the context list of records and to its headings. Problem: how to keep context with nice URLs SEE BELOW: Amazon.com /<db>/bib-record/<record-id>/<context?>/[<style>]/ This looks better. Context may be: "search-id + index in list" /<db>/bib-record/<recordID>/[<style>]/ Permalink New material: /<db>/new-material/ List of bib records. Pagination? new_material() bib-record-news.html, bib-record-mini2.html By date? Static pages: /<db>/about/ May include dynamic info, e.g. number of records and about() about.html last updated time /<db>/feedback/ May include dynamic info, e.g. context for a bug report feedback() feedback.html (form + reply) /<db>/help/ help() help.html Other: Admin: modify settings? Test (boolean conditions, extract keys, etc) Logs? Subcatalogs? Advanced search? (search only in bib records, with many params) See other desired features mentioned in the wiki. ------------------------------------------------------------------------------------ Lists, details and context in Amazon.com ------------------------------------------------------------------------------------ Query: Books › "dawkins" http://www.amazon.com/s/ref=nb_ss_gw/103-5784421-3350266 ?url=search-alias%3Dstripbooks &field-keywords=dawkins Page #2 http://www.amazon.com/s/ref=sr_pg_2 ?ie=UTF8 &rs=1000 &keywords=dawkins &rh=n%3A1000%2Ck%3Adawkins &page=2 Page #3 http://www.amazon.com/s/ref=sr_pg_3 ?ie=UTF8 &rs=1000 &keywords=dawkins &rh=n%3A1000%2Ck%3Adawkins &page=3 Details of record #27 (3rd of page #3) http://www.amazon.com/God-New-Atheism-Critical-Response/dp/066423304X/ref=sr_1_27 ?ie=UTF8 &s=books &qid=1205012241 <== search id &sr=1-27 (page has no links to prev/next/list) Details of record #29 (5th of page #3) http://www.amazon.com/Dawkins-Delusion-McGrath/dp/0281059276/ref=sr_1_29 ?ie=UTF8 &s=books &qid=1205012241 <== search id &sr=1-29 ------------------------------------------------------------------------------------ Lists, details and context in Barnes and Noble ------------------------------------------------------------------------------------ Query: You Searched Books For: dawkins http://search.barnesandnoble.com/booksearch/results.asp?WRD=dawkins Page #3 http://search.barnesandnoble.com/booksearch/results.asp?SZE=10&WRD=dawkins&SAT=21 Details for item #22 (2nd in page #3) http://search.barnesandnoble.com/River-out-of-Eden/Richard-Dawkins/e/9780465069903/?itm=22 Does not mention the search id ------------------------------------------------------------------------------------ Lists, details and context: question to django-users group ------------------------------------------------------------------------------------ http://groups.google.com/group/django-users/browse_thread/thread/9678230f84c50f03 Justin, thanks for your answer. Your arguments are very clear. So, this has practically nothing to do with Django or any other framework that I might choose, since it's more a basic web design question. ------------------------------------------------------------------------------------ [BROWSE CLASSIFICATION] /bibima/CLASS-BROWSE/msclevel=1/searchType=SUBJ / /bibima/CLASS-BROWSE/msclevel=3/searchType=SUBJ/query=00/ Patrón: /<db>/CLASS-BROWSE/<tree_level>/<class_code>/ [SEARCH CLASSIFICATION BY KEYWORDS] /bibima/searchType=SUBJ/query=28A80/ /bibima/searchType=SUBJ/query=godel/ Patrón: /<db>/KW-IN-CLASS/<query>/ [SEARCH BIBS BY CLASS CODE] /bibima/BIB-CLASS-SEARCH/index=SUBJ/query=00A73/ Patrón: /<db>/CLASS-IN-BIB/<class_code>/ [BROWSE INDEXES] /bibima/H-BROWSE/index=NAME/browseTerm=g/ /bibima/H-BROWSE/index=TITLE/browseTerm=per/ /bibima/browseMfn=1549/index=NAME/ (pagination) /bibima/browseMfn=4609/index=TITLE/ (pagination) Patrón: /<db>/HEAD-BROWSE/<index>/<term>/ [BROWSE CATALOG] /abr/BROWSE-CATALOG/browseMfn=1/ /abr/BROWSE-CATALOG/browseTerm=517/ [HEADING MATCH IN BIBS] /bibima/BIB-H-SEARCH/index=NAME/query=^aPeral,+Ireneo./ Posibles valores para index: NAME, SUBJ, COL (=series) Patrón: /<db>/HEAD-IN-BIB/<index>/<heading>/ [KW MATCH IN HEADINGS] /bibima/searchType=NAME/query=monteiro/ /bibima/searchType=SUBJ/query=monteiro/from=21/ Patrón: /<db>/KW-IN-HEAD/<index>/<query>/ [KW MATCH IN BIBS] /bibima/searchType=TITLE/query=robert/ /bibima/searchType=SN/query=123/ /bibima/searchType=ANY/query=123/ Patrón: /<db>/KW-IN-BIB/<type/field>/<query>/ [SORT BIB RECORDS] /bibima/BIB-H-SEARCH/query=%5EaCuadernos+Teorema/index=COL/sortBy=title/ Patrón: append /<sortBy>/ to the current URL, or replace its value if present [DISPLAY BIB RECORD] /bibima/BIB-RECORD/curr=5/total=13/cid=/tmp/fileS3fuXx Patrón: /<db>/BIB-RECORD/<curr>/<total>/<cid>/ Permalink: /bibima/BIB-RECORD/cn=002431/ Patrón: /<db>/BIB-RECORD/<recordID>/