Problem listing documents in a CouchApp

335 Views Asked by At

I am in a bit of trouble as I am not able to find resources and/or tutorials that give me enough knowledge how to do this properly:

I am building a Couchapp uppon a contact database. For this I need to have a unordered list of the contacts(only the names) on the landing page. After examining this now for quite a time and examining the http://kansojs.org framework, I think I might have to ask here at Stackoverflow how this is done properly...

Here is what I ended up with (not working):

I started to setup a view (file 'views/contactslist/map.js ):

function(doc) {
  if (doc.displayName) {
    emit(doc.displayName, {displayname: doc.displayName});
  }
};

... which basically gives me back this response:

{"total_rows":606,"offset":0,"rows":[
{{"id":"478d86edbbd94bbe627f3ebda309db7c","key":"Al Yankovic","value":{"displayname":"Al Yankovic"}},
{"id":"478d86edbbd94bbe627f3ebda30bb5cb","key":"Al-Qaeda","value":{"displayname":"Al-Qaeda"}}
]}

Afterwards, I created a new directory in the evently directory, 'contacts' and created the files "mustache.html", "data.js" and "query.json":

mustache.html:

<ul>
  {{#contacts}}
    <li>
        <div class="name">
          {{displayname}}
        </div>
      <div style="clear:left;"></div>
    </li>
  {{/contacts}}
</ul>

data.js:

function(data) {
  $.log(data)
  var p;
  return {contacts : data.rows};
};

query.json:

{
  "view" : "contactslist",
  "descending" : "true"
}

Then I added and $("#contacts").evently("contacts", app); to the index.html in the _attachments directory.

Watching the console in Firebug I can not see any Request/Response from CouchDB returning my vie's results, so I think it is not even requested. Where did I take the wrong turn?

2

There are 2 best solutions below

0
On BEST ANSWER

data.js, query.json and mustache.html need to be in evently/contacts/_init/

_init means that this gets executed on widget initialization.

0
On

Going over this Tutorial helped a lot.