incubator-couchdb-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Zachary Zolton <zachary.zol...@gmail.com>
Subject Re: generate _update body using _show function
Date Mon, 26 Sep 2011 15:13:38 GMT
Gert,

Move your HTML templates to somewhere in the design doc, for example
make an object property called templates.

Now, within your update/list/show functions, you can then access them
as follows:

  this.templates.templateName

Also, I'd strongly suggest using a templating library (e.g.
Mustache.js) instead of string concatenation as this will further
simplify your code.


Cheers,

Zach

On Sun, Sep 25, 2011 at 6:36 PM, Gert Cuykens <gert.cuykens@gmail.com> wrote:
> On Mon, Sep 26, 2011 at 1:33 AM, Gert Cuykens <gert.cuykens@gmail.com> wrote:
>> Can you call a show function inside a update function to generate a update body?
>> Example
>> {
>>  "updates":{
>>  "post":"function(doc,req){
>>   for(i in req.form)doc[i]=req.form[i]
>>   return [doc,{'headers':{'Content-Type':'text/html'},
>>                'body':'\
>> <label>adress:</label>  <input name=\"adress\"
>> value=\"'+doc.adress+'\"/><br/>\\n\
>> <label>city:</label>    <input name=\"city\"
>> value=\"'+doc.city+'\"/><br/>\\n\
>> <label>country:</label> <input name=\"country\"
>> value=\"'+doc.country+'\"/><br/>\\n\
>> <label>phone:</label>   <input name=\"phone\"
>> value=\"'+doc.phone+'\"/><br/>\\n\
>> <label>email:</label>   <input name=\"email\"
>> value=\"'+doc.email+'\"/><br/>\\n\
>> <input name=\"_id\"  value=\"'+doc._id+'\"  type=\"hidden\"/>\\n\
>> <input name=\"_rev\" value=\"'+doc._rev+'\" type=\"hidden\"/>\\n\
>> <img id=\"picture\" src=\"/users/'+doc._id+'/picture.png\"/>'
>>   }]
>>  }"
>>  },
>>  "shows":{
>>  "html":"function(doc,req){
>>   return {headers:{'Content-Type':'text/html'},
>>           body:'\
>> <label>adress:</label>  <input name=\"adress\"
>> value=\"'+doc.adress+'\"/><br/>\\n\
>> <label>city:</label>    <input name=\"city\"
>> value=\"'+doc.city+'\"/><br/>\\n\
>> <label>country:</label> <input name=\"country\"
>> value=\"'+doc.country+'\"/><br/>\\n\
>> <label>phone:</label>   <input name=\"phone\"
>> value=\"'+doc.phone+'\"/><br/>\\n\
>> <label>email:</label>   <input name=\"email\"
>> value=\"'+doc.email+'\"/><br/>\\n\
>> <input name=\"_id\"  value=\"'+doc._id+'\"  type=\"hidden\"/>\\n\
>> <input name=\"_rev\" value=\"'+doc._rev+'\" type=\"hidden\"/>\\n\
>> <img id=\"picture\" src=\"/users/'+doc._id+'/picture.png\"/>'
>>   }
>>  }"
>>  }
>> }
>>
>
> Or assign a global variable that can be used in _show and _update functions?
>

Mime
View raw message