[web2py] Re: Implementing a search engine in web2py

2014-07-09 Thread lokesh
I have a single web2py instance running on my localhost. And I have defined 
these functions in a controller and displaying the obtained using their 
respective views. I'm testing them by opening appropriate urls likes 
localhost:8000/application/controller/function.
In first case it returns the just inserted row if it matches search 
results. And if I open the second function url after the first one it 
doesn't return any search results.

On Monday, July 7, 2014 3:45:56 PM UTC+5:30, Massimo Di Pierro wrote:

 Can you tell us more about your setup? Do you have one server? Multiple 
 processes? Did you try it form the web2py shell?

 On Saturday, 5 July 2014 06:28:33 UTC-5, lokesh wrote:

 I'm using whoosh backend with plugin_haystack in my application.
 But the search function is working only if there is an insert or update 
 db statement in that function.
 For instance :
 def temp():
  db.my_table.insert(my_row1=temporary data to test the search)
  rows = db(index.search(my_row1=data to search))
  return dict(rows=rows)

 this returns the newly inserted row as the search result. But after that 
 if I do this, it doesn't return any matching result,
 def temp2():
  rows = db(index.search(my_row1=data to search))
  return dict(rows=rows)

 what could be the mistake here?



-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: SQLEDITABLE: redirect after submit

2014-07-09 Thread samurai
If u have got the answer then please share with us also.

On Wednesday, July 9, 2014 4:30:59 AM UTC+5:30, Fabiano Almeida wrote:

 Hi,

 Has like 'accepted' attribute in SQLEDITABLE?

 I need redirect to other page after 'ok' click.

 Thanks,

 Fabiano.


-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Running web2py with settings in a config file

2014-07-09 Thread Kuba Kozłowicz
I am trying to run web2py application from command line with such a command:

C:\Python27\python.exe T:/MyFolder//web2py.py -a 'recycle' --config=
parameters_8080.py

and I have specified my application's settings in the file called 
parameters_8080.py:

password=
pbkdf2(1000,20,sha512)$9b51a45d2413e210$cc5ea267ebe279f1af5dedf3710b3c9e95cf4f8e
port = 8080
ip = '127.0.0.1'

1. Whenever I enter one of my application's page, this the file 
parameters_8080.py gets cleard so that only password field stays inside 
it. Why does this happen?
I think the docs do not specify clearly how to use 'recycle' and what is 
going on here.


2. Is it possible to specify that config file somewhere else than in 
project's root folder and named as parameters_port.py ? I want to 
create a folder called etc in my application and put config there.

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] problems loading TODO element in editor

2014-07-09 Thread Giacomo Dorigo
Hello to everybody,
I am running web2py on pythonanywhere platform and the TODO element at the 
bottom left corner of the code editor keeps loading forever.
The pythonanywhere system recognize this and consider it a sign that my app 
has crushed and so it pushes it down and reload. 

The result of this is that it's almost impossible to write code directly 
online for extensive periods.

Any idea on why the TODO element could not be working properly? 
Or better, how to disable it?

thanks,
Giacomo

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] is_gae in AutoComplete widget is not set on GAE devserver

2014-07-09 Thread genadij razdorov
It seems that
if is_gae:


in gluon.sqlhtml.AutocompleteWidget.callback is not set properly on GAE 
devserver. If I change that line with:

if self.request.global_settings.web2py_runtime_gae:

autocomplete is working fine.

BW
Genadij

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Delete Query Not Working

2014-07-09 Thread samurai
This is the function for deleting a record from database. 

def pro_del():
d = request.args
db(db.products.product_id == d).delete()
session.flash = Product Deleted
redirect(URL('default','index'))
#return locals()

The id is successfully getting passed to the function by args(means d is 
getting its value). I checked it by returning locals.
The redirection is also working fine. Its also flashing the msg. 
Just the query is not working.

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] sublime text 3

2014-07-09 Thread eric cuver
hello,

how can we do to configure sublime text 3 to work web2py 

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [web2py] Can I create an RSS Reader like Techi in web2py?

2014-07-09 Thread Ricardo Pedroso
On Mon, Jul 7, 2014 at 3:16 AM, Vinicius Assef vinicius...@gmail.com
wrote:

 Ricardo, very nice your solution.

 Below, I wrote some questions about it.

 
  On Sunday, 6 July 2014 02:01:23 UTC-5, Ricardo Pedroso wrote:
 
  - search is powered by whoosh and bottle - Web2py is querying through a
  simple restful api.

 I was thinking about this piece of your architecture.
 If your request goes through Web2py, why delegate search to bottle?
 (and, also, wait for another request)

 Why not just using Whoosh inside Web2py?



Mainly for two reasons and because my vps has a small amount of memory
available
but has 8 cores.

1. I was worried about performance of whoosh.
Whoosh is used in two different parts of the site, the search in the main
page
and the maybe related when viewing an article (eg:
http://feeds.uni.me/feeds/default/article/281126?l=ens=)
and this are the two slowest (but still fast) things in the site.
So this way I can put another core to work and I think I can release
another greenlet when waiting for
whoosh results and handle more concurrency since I'm using
eventlet.monkey_patch() and from web2py
I do this for the search:

u = urllib2.urlopen('http://localhost:8080/search/' + str(int(p)) + '/' +
arg + '?l=' + lang, timeout=15)
json.loads(u.read())

2. memory consumption of whoosh. Currently I have this memory usage:
web2py - 25MB
search (bottle+whoosh) - 39MB
the background job that grabs and process the feeds - usually 40MB (when
running)
nginx master - 5MB
nginx worker - 5.5MB - The site is run only with one process/thread since
I'm using
greenlet's through eventlet.

Sometimes(not too often) the background job give me a crash with
MemoryError so
the first thing I put down to free some memory is the bottle+whoosh process
and the rest
of the site still works, of course, without the search and maybe
related features.


Another, less important, reason was that I like to complicate, it's funnier
:)



  - a small VPS with 256Mb of RAM.

 All these described processes run inside this vps?


 yes.

Ricardo

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: Using DAL inside a thread

2014-07-09 Thread Wonton
Hello dlypka,

I was investigating this, but after reading the docs I'm a bit confused:

- To use the scheduler in a module what should i do? Create a scheduler.py 
model and pass the scheduler created in the model to the function in my 
module as I do with my db?

- Can I start and stop the task whenever I want? It seems that I have to 
insert the task in my db but I don't now when this task will be called 
because it depend on a certain event and maybe it never happens or it 
happens 500 times an hour.

Thank you very much!

On Wednesday, July 9, 2014 2:30:43 AM UTC+2, dlypka wrote:

 Perhaps the Scheduler can help.

 On Saturday, July 5, 2014 11:47:39 AM UTC-5, Wonton wrote:

 Hello!

 As I commented in other post (
 https://groups.google.com/forum/#!topic/web2py/ZbEndj2H-fk) I have 
 problems using APNSWrapper feedback service sending push notifications.

 While I wait for an answer I've thought a possible solution to my 
 problem. This solution consists in:
 1. I'm going to send push notifications to a series of device tokens.
 2. For the current device token I mark it as wrong in the database.
 3. I send the push notifications.
 4.1. If the token is wrong the push notification is not sent and 
 APNSWrapper fails and the loop of tokens is broken.
 4.2. If the token is right the push notification is sent.
 5. I mark that token as right in the database.

 This way I can check the database and remove all tokens marked with 
 wrong.

 The problem is that I'm executing this loop not in the main thread and 
 I'm having lots of problems: crashes, error for database connection closed, 
 etc...

 This is my code:

 ifcPushnotifications.py (is a module)
 push_thread = threading.Thread(target=__sendPushToUsersInBackground, args
 =(users, db))
 push_thread.start()

 def __sendPushToUsersInBackground(users, db):
 wrapper = APNSNotificationWrapper('mycert.pem', False)
 for user in users:
 _tokenRow = db(db.push_notifs_table.userId == user['id'])
 _tokenRow.update(status='wrong')
 __sendPushToUser(user)
 _tokenRow.update(status='right')


 If user's token is wrong __sendPushToUser fails and the loop leaves its 
 execution, so in the database it should be 'wrong'.

 My problem is that all 3 lines related to database (2 updates and the 
 query) fail randomly, sometimes crashes, sometimes returns an error of 
 closed database and do nothing, etc...

 So, how could I use my database inside a thread so I can avoid this 
 errors?

 Thank you very much and kind regards!



-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [web2py] Delete Query Not Working

2014-07-09 Thread Manuele Pesenti
Il 09/07/14 10:32, samurai ha scritto:
 def pro_del():
 d = request.args
 db(db.products.product_id == d).delete()
 session.flash = Product Deleted
 redirect(URL('default','index'))
 #return locals()
try this:

def pro_del():
d = request.args(0) or redirect(URL('default', 'index'))
db(db.products.product_id == int(d)).delete()
...

cheers

M.

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [web2py] Can I create an RSS Reader like Techi in web2py?

2014-07-09 Thread Vinicius Assef
Thank you, Ricardo.

It's clear, now.

On Mon, Jul 7, 2014 at 3:50 PM, Ricardo Pedroso rmdpedr...@gmail.com wrote:
 On Mon, Jul 7, 2014 at 3:16 AM, Vinicius Assef vinicius...@gmail.com
 wrote:

 Ricardo, very nice your solution.

 Below, I wrote some questions about it.

 
  On Sunday, 6 July 2014 02:01:23 UTC-5, Ricardo Pedroso wrote:
 
  - search is powered by whoosh and bottle - Web2py is querying through a
  simple restful api.

 I was thinking about this piece of your architecture.
 If your request goes through Web2py, why delegate search to bottle?
 (and, also, wait for another request)

 Why not just using Whoosh inside Web2py?



 Mainly for two reasons and because my vps has a small amount of memory
 available
 but has 8 cores.

 1. I was worried about performance of whoosh.
 Whoosh is used in two different parts of the site, the search in the main
 page
 and the maybe related when viewing an article (eg:
 http://feeds.uni.me/feeds/default/article/281126?l=ens=)
 and this are the two slowest (but still fast) things in the site.
 So this way I can put another core to work and I think I can release another
 greenlet when waiting for
 whoosh results and handle more concurrency since I'm using
 eventlet.monkey_patch() and from web2py
 I do this for the search:

 u = urllib2.urlopen('http://localhost:8080/search/' + str(int(p)) + '/' +
 arg + '?l=' + lang, timeout=15)
 json.loads(u.read())

 2. memory consumption of whoosh. Currently I have this memory usage:
 web2py - 25MB
 search (bottle+whoosh) - 39MB
 the background job that grabs and process the feeds - usually 40MB (when
 running)
 nginx master - 5MB
 nginx worker - 5.5MB - The site is run only with one process/thread since
 I'm using
 greenlet's through eventlet.

 Sometimes(not too often) the background job give me a crash with MemoryError
 so
 the first thing I put down to free some memory is the bottle+whoosh process
 and the rest
 of the site still works, of course, without the search and maybe related
 features.


 Another, less important, reason was that I like to complicate, it's funnier
 :)


 
  - a small VPS with 256Mb of RAM.

 All these described processes run inside this vps?


  yes.

 Ricardo

 --
 Resources:
 - http://web2py.com
 - http://web2py.com/book (Documentation)
 - http://github.com/web2py/web2py (Source code)
 - https://code.google.com/p/web2py/issues/list (Report Issues)
 ---
 You received this message because you are subscribed to the Google Groups
 web2py-users group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to web2py+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/d/optout.

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [web2py] Re: SQLEDITABLE: redirect after submit

2014-07-09 Thread Fabiano Almeida
Hi Samurai,

I tried other way: use 2 buttons: sqleditable submit to save grid, then a
second button to process new data and redirect to other page. I think this
is not the best way...

Fabiano.


2014-07-09 5:33 GMT-03:00 samurai shub.jain1...@gmail.com:

 If u have got the answer then please share with us also.


 On Wednesday, July 9, 2014 4:30:59 AM UTC+5:30, Fabiano Almeida wrote:

 Hi,

 Has like 'accepted' attribute in SQLEDITABLE?

 I need redirect to other page after 'ok' click.

 Thanks,

 Fabiano.

  --
 Resources:
 - http://web2py.com
 - http://web2py.com/book (Documentation)
 - http://github.com/web2py/web2py (Source code)
 - https://code.google.com/p/web2py/issues/list (Report Issues)
 ---
 You received this message because you are subscribed to the Google Groups
 web2py-users group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to web2py+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/d/optout.


-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: Running web2py with settings in a config file

2014-07-09 Thread Massimo Di Pierro
You should in fact use a different filename for your --config. The 
paramater_.py file is meant to contain only the password and it can be 
overwritten by web2py if you change your password using the admin interface.

On Tuesday, 8 July 2014 06:40:20 UTC-5, Kuba Kozłowicz wrote:

 I am trying to run web2py application from command line with such a 
 command:

 C:\Python27\python.exe T:/MyFolder//web2py.py -a 'recycle' --config=
 parameters_8080.py

 and I have specified my application's settings in the file called 
 parameters_8080.py:

 password=
 pbkdf2(1000,20,sha512)$9b51a45d2413e210$cc5ea267ebe279f1af5dedf3710b3c9e95cf4f8e
 port = 8080
 ip = '127.0.0.1'

 1. Whenever I enter one of my application's page, this the file 
 parameters_8080.py gets cleard so that only password field stays inside 
 it. Why does this happen?
 I think the docs do not specify clearly how to use 'recycle' and what is 
 going on here.


 2. Is it possible to specify that config file somewhere else than in 
 project's root folder and named as parameters_port.py ? I want to 
 create a folder called etc in my application and put config there.


-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: is_gae in AutoComplete widget is not set on GAE devserver

2014-07-09 Thread Massimo Di Pierro
Can you check if the fix in trunk works for you? Thanks for reporting this 
problem.

On Tuesday, 8 July 2014 07:26:13 UTC-5, genadij razdorov wrote:

 It seems that
 if is_gae:


 in gluon.sqlhtml.AutocompleteWidget.callback is not set properly on GAE 
 devserver. If I change that line with:

 if self.request.global_settings.web2py_runtime_gae:

 autocomplete is working fine.

 BW
 Genadij


-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: SQLFORM.grid changes request

2014-07-09 Thread Massimo Di Pierro
The point of the signature is to digitally sign a URL. If you change the 
url manually the signature is no longer valid.


On Tuesday, 8 July 2014 08:27:24 UTC-5, Yebach wrote:

 Hello

 When I try to put form = SQLFORM.grid(db.mytable) in my controller the 
 request changes to 
 my/web/site/view?_signature=520af19b1095db04dda2f1b6cbea3a03c3551e13 which 
 causes my if statement in controller to collapse. Can smbd please explain 
 why this happens?
 If I put user_signature=False then on view load the grid is shown (though 
 the looks is awful, I still need to find out how to change the view of my 
 table), but on search,edit, etc the same thing happens again. The url is 
 changed

 thank you




-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [web2py] unique=True for time on sqlite

2014-07-09 Thread Massimo Di Pierro
Yes. It should be appended... I see there is a pending patch. Will apply 
asap.

On Tuesday, 8 July 2014 15:30:45 UTC-5, Anthony wrote:

 In DAL.sqlhtml_validators, we have:

 if field.unique:
 requires.insert(0,validators.IS_NOT_IN_DB(db,field))

 I wonder why IS_NOT_IN_DB is prepended rather appended to the list of 
 validators. Given that some of the validators may actually alter the value 
 to be inserted (e.g., CRYPT, IS_SLUG, IS_UPPER, IS_LOWER, CLEANUP), I would 
 think we would generally want IS_NOT_IN_DB to come last so it applies to 
 the actual value to be inserted (of course, there are cases where you might 
 want the opposite).

 Anthony

 On Tuesday, July 8, 2014 3:41:41 PM UTC-4, Paolo Valleri wrote:

 I found the issue. Since the format of the date field (same happens for 
 the time field) is a text in sqlite we must postpone to the validator 
 IS_NOT_IN_DB the validator IS_DATE. 
 By setting:
 db.user_table.birthday.requires=[IS_DATE(), IS_NOT_IN_DB(db,
 'user_table.birthday')]
 everything works as expected even on sqlite. 
 What do you think if we make it as default for date/time fields when the 
 backend is sqlite?

 Paolo

 On Tuesday, July 8, 2014 7:04:44 PM UTC+2, Paolo Valleri wrote:

 What is odd to me is that,on postgres the validator works as expected 
 while on sqlite it doesn‘t and it is the backend itself that raises the 
 exception.
 On Jul 8, 2014 6:43 PM, Anthony abasta...@gmail.com wrote:

 Are you saying you want an error message to appear on the form? For 
 that, you need an IS_NOT_IN_DB validator, regardless of the database 
 backend.

 Anthony

 --
 Resources:
 - http://web2py.com
 - http://web2py.com/book (Documentation)
 - http://github.com/web2py/web2py (Source code)
 - https://code.google.com/p/web2py/issues/list (Report Issues)
 ---
 You received this message because you are subscribed to a topic in the 
 Google Groups web2py-users group.
 To unsubscribe from this topic, visit 
 https://groups.google.com/d/topic/web2py/AnmLhKmS8UA/unsubscribe.
 To unsubscribe from this group and all its topics, send an email to 
 web2py+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/d/optout.



-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: sublime text 3

2014-07-09 Thread Massimo Di Pierro
If your problem is the lack of autocompletion try add gluon to path and 
include if 0: from gluon import * on your files. Everything else should 
work out of the box.

On Wednesday, 9 July 2014 04:29:49 UTC-5, eric cuver wrote:

 hello,

 how can we do to configure sublime text 3 to work web2py 


-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [web2py] Delete Query Not Working

2014-07-09 Thread samurai
Thanks Manuele. Just writing (0) worked for me as my product_id is'nt an 
int type. Its alphanumeric.

On Wednesday, July 9, 2014 4:32:55 PM UTC+5:30, Manuele wrote:

Il 09/07/14 10:32, samurai ha scritto: 
  def pro_del(): 
  d = request.args 
  db(db.products.product_id == d).delete() 
  session.flash = Product Deleted 
  redirect(URL('default','index')) 
  #return locals() 
 try this: 

 def pro_del(): 
 d = request.args(0) or redirect(URL('default', 'index')) 
 db(db.products.product_id == int(d)).delete() 
 ... 

 cheers 

 M. 


On Wednesday, July 9, 2014 4:32:55 PM UTC+5:30, Manuele wrote:

 Il 09/07/14 10:32, samurai ha scritto: 
  def pro_del(): 
  d = request.args 
  db(db.products.product_id == d).delete() 
  session.flash = Product Deleted 
  redirect(URL('default','index')) 
  #return locals() 
 try this: 

 def pro_del(): 
 d = request.args(0) or redirect(URL('default', 'index')) 
 db(db.products.product_id == int(d)).delete() 
 ... 

 cheers 

 M. 


-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: SQLEDITABLE: redirect after submit

2014-07-09 Thread 'kato' via web2py-users
Hi.

You can write same as SQLFORM.

example.
def demo070():
response.title = 'demo070'
response.view = 'plugin_sqleditable/sample.html'
editable = SQLEDITABLE(db.employee_sheet, showid=False, maxrow=5)
if editable.accepts(request.vars, session):
response.flash = T('editable accepted')
elif editable.errors:
response.flash = T('editable has errors')
else:
response.flash = T('please fill out the editable')
return dict(editable=editable)

def demo071():
response.title = 'demo071'
response.view = 'plugin_sqleditable/sample.html'
editable = SQLEDITABLE(db.employee_sheet, showid=False, maxrow=5)
if editable.process().accepted:
response.flash = T('editable accepted')
elif editable.errors:
response.flash = T('editable has errors')
else:
response.flash = T('please fill out the editable')
return dict(editable=editable)

2014年7月8日火曜日 20時00分59秒 UTC-3 Fabiano Almeida:

 Hi,

 Has like 'accepted' attribute in SQLEDITABLE?

 I need redirect to other page after 'ok' click.

 Thanks,

 Fabiano.


-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] The Zen of web2py

2014-07-09 Thread horridohobbyist
I was thinking the other day it's so unfortunate that web2py has to live in 
the shadow of the great Django. As Massimo pointed out a while ago, the 
reason is because Django gets great PR. And Django users are a very vocal 
bunch.

You can't walk the web framework landscape without tripping over articles 
and blogs about Django extolling its advantages and crowing about its 
success in the enterprise. By comparison, there are very few such articles 
about web2py.

Yes, I know, Django's community is about 10x the size of ours, but that's 
really just an excuse. There's no reason why we can't be the 300 charging 
forth into battle against the Persians at Thermopylae. Surely, we are made 
of sterner stuff.

I'm too humble to think of myself as Leonidas, but I did try to start the 
ball rolling with this article 
https://medium.com/@richardeng/the-zen-of-web2py-ede59769d084. Hopefully, 
some (or many?) of you will follow suit.

Let's improve web2py's PR. A blast of articles over the next year could 
change the fortunes of our favourite web framework.

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: autocomplete depending on other form field

2014-07-09 Thread Annet
Hi Jim,

Thanks for you reply.

I've been working on this function on and off, so far this works:

In the view:

script type=text/javascript
$(function() {$(#no_table_name).autocomplete({source: {{=URL('jqueryui', 
'organization_autocomplete')}}, minLength: 2});});
$(function() {$(#no_table_tag).autocomplete({source: {{=URL('jqueryui', 
'nodetag_autocomplete')}}, change: function() 
{$(#no_table_name).val('');}, minLength: 2});});
$(function() {$(#no_table_locality).autocomplete({source: 
{{=URL('jqueryui', 'addresslocality_autocomplete')}}, minLength: 2});});
/script

I think $.post() is the best way to get the value of no_table_tag to the 
function addresslocality_autocomplete(), something like:

$.post({{=URL('jqueryui', 'addresslocality_autocomplete')}}, { tag: 
$(#no_table_tag).val('');} );


and the function in the controller

def addresslocality_autocomplete():
rows = db((db.node_tag.tag=='request.vars.tag)  
(db.node_tag.nodeID==db.address.nodeID)
  
(db.address.locality.like(request.vars.term+'%'))).select(db.address.locality, 
distinct=True,
 
orderby=db.address.locality).as_list()
result = [r['locality'] for r in rows]
return response.json(result)


I tried several events to trigger  $.post () but none of them worked. How 
do I trigger $.post() to pass
the value of no_table_tag to the function?


Regards,

Annet

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: DAL Bug?

2014-07-09 Thread Leonel Câmara
It should not return zero, it should return the number of deleted rows. The 
purpose of using a DAL is to abstract away this kind of differences.

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: Delete Query Not Working

2014-07-09 Thread Leonel Câmara
It should be:
d = request.args(0)

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [web2py] The Zen of web2py

2014-07-09 Thread Philip Kilner

Hi,

On 09/07/14 13:31, horridohobbyist wrote:

Let's improve web2py's PR. A blast of articles over the next year could
change the fortunes of our favourite web framework.



Good piece, great finish.

I'll take that as a challenge, and see if I can describe my own journey 
from desktop databases to web2py via Zope and Plone as succinctly!


:-)


--

Regards,

PhilK


e: p...@xfr.co.uk - m: 07775 796 747

'work as if you lived in the early days of a better nation'
- alasdair gray


--
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups web2py-users group.

To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [web2py] The Zen of web2py

2014-07-09 Thread Carlos Costa
I like it.

I wonder if we could do it in an organized in some way.

Recently I lost to convince my boss to change everything to web2py because
there are few developers that know it.
So it would be very good to have a massive community. As we will have more
opportunities to work on the framework we love best.

Groups like this have little exposure outside. We need something else!


2014-07-09 10:03 GMT-03:00 Philip Kilner p...@xfr.co.uk:

 Hi,

 On 09/07/14 13:31, horridohobbyist wrote:

 Let's improve web2py's PR. A blast of articles over the next year could
 change the fortunes of our favourite web framework.


 Good piece, great finish.

 I'll take that as a challenge, and see if I can describe my own journey
 from desktop databases to web2py via Zope and Plone as succinctly!

 :-)


 --

 Regards,

 PhilK


 e: p...@xfr.co.uk - m: 07775 796 747

 'work as if you lived in the early days of a better nation'
 - alasdair gray


 --
 Resources:
 - http://web2py.com
 - http://web2py.com/book (Documentation)
 - http://github.com/web2py/web2py (Source code)
 - https://code.google.com/p/web2py/issues/list (Report Issues)
 --- You received this message because you are subscribed to the Google
 Groups web2py-users group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to web2py+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/d/optout.




-- 
Att.

Carlos J. Costa
Cientista da Computação
Esp. Gestão em Telecom
º))

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [web2py] unique=True for time on sqlite

2014-07-09 Thread Anthony
Note, the pending patch makes the change only in the case of SQLite with 
date and time fields, so it will need to be altered to make the change 
universal.

Anthony

On Wednesday, July 9, 2014 8:12:01 AM UTC-4, Massimo Di Pierro wrote:

 Yes. It should be appended... I see there is a pending patch. Will apply 
 asap.

 On Tuesday, 8 July 2014 15:30:45 UTC-5, Anthony wrote:

 In DAL.sqlhtml_validators, we have:

 if field.unique:
 requires.insert(0,validators.IS_NOT_IN_DB(db,field))

 I wonder why IS_NOT_IN_DB is prepended rather appended to the list of 
 validators. Given that some of the validators may actually alter the value 
 to be inserted (e.g., CRYPT, IS_SLUG, IS_UPPER, IS_LOWER, CLEANUP), I would 
 think we would generally want IS_NOT_IN_DB to come last so it applies to 
 the actual value to be inserted (of course, there are cases where you might 
 want the opposite).

 Anthony

 On Tuesday, July 8, 2014 3:41:41 PM UTC-4, Paolo Valleri wrote:

 I found the issue. Since the format of the date field (same happens for 
 the time field) is a text in sqlite we must postpone to the validator 
 IS_NOT_IN_DB the validator IS_DATE. 
 By setting:
 db.user_table.birthday.requires=[IS_DATE(), IS_NOT_IN_DB(db,
 'user_table.birthday')]
 everything works as expected even on sqlite. 
 What do you think if we make it as default for date/time fields when the 
 backend is sqlite?

 Paolo

 On Tuesday, July 8, 2014 7:04:44 PM UTC+2, Paolo Valleri wrote:

 What is odd to me is that,on postgres the validator works as expected 
 while on sqlite it doesn‘t and it is the backend itself that raises the 
 exception.
 On Jul 8, 2014 6:43 PM, Anthony abasta...@gmail.com wrote:

 Are you saying you want an error message to appear on the form? For 
 that, you need an IS_NOT_IN_DB validator, regardless of the database 
 backend.

 Anthony

 --
 Resources:
 - http://web2py.com
 - http://web2py.com/book (Documentation)
 - http://github.com/web2py/web2py (Source code)
 - https://code.google.com/p/web2py/issues/list (Report Issues)
 ---
 You received this message because you are subscribed to a topic in the 
 Google Groups web2py-users group.
 To unsubscribe from this topic, visit 
 https://groups.google.com/d/topic/web2py/AnmLhKmS8UA/unsubscribe.
 To unsubscribe from this group and all its topics, send an email to 
 web2py+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/d/optout.



-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: how to Consume external NetTcp SOAP service in Web2Py

2014-07-09 Thread Matheus Cardoso
There are some examples in the web2py's book 
http://web2py.com/books/default/chapter/29/10/services#SOAP and lots of 
more in pysimplesoap repository https://code.google.com/p/pysimplesoap/, 
as Massimo said. Besides, I just created a WS and a SOAP client with basic 
authentication and I used some of many forms of consuming a WS like this:


ws_user = your_login
ws_pass = your_password

#I am using web2py to create the client
from gluon.contrib.pysimplesoap.client import SoapClient
import base64
encoded = base64.b64encode('%s:%s' % (ws_user, ws_pass)).replace('\n', '')

# The following IS NOT the address of the WSDL from WS
ws_location = your_web_service_location
ws_action = your_web_service_action
ws_namespace = your_web_service_namespace

# Create the client
client_soap = SoapClient(
location = ws_location,
action = ws_action, # SOAPAction
namespace = ws_namespace,
soap_ns='soap', trace = False, ns = False, exceptions=True, http_headers
={'Authorization': Basic %s % encoded})

Enjoy! :)

On Monday, June 23, 2014 2:39:22 PM UTC-3, Gopi wrote:

 Hi All.. I am new to web2py. Is there a way to call external NetTcp SOAP 
 service in Web2Py. What are the best practices to call such  services in 
 Web2Py?


-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: JSON-RPC calls within controller functions

2014-07-09 Thread Matheus Cardoso
There is any authentication on that? If yes, you should try something like 
this:

server = ServerProxy('http://'+ ws_user + ':' + ws_pass + '
@127.0.0.1:8000/app22/default/call/jsonrpc 
http://127.0.0.1:8000/app22/default/call/jsonrpc')

And If you created by yourself the WS through web2py, make sure that you 
put the decorator on your service function load. Besides, try (this time 
is a guess, ok?) return your result variable instead of locals().

On Tuesday, July 8, 2014 7:41:44 AM UTC-3, lyn2py wrote:

 I'm wanting to get JSON RPC to work within web2py controller functions, 
 without using pyjamas (which is the example provided in the book)

 This is my code for the JSON RPC call:
 def test_call():
 from gluon.contrib.simplejsonrpc import ServerProxy
 service = ServerProxy('
 http://127.0.0.1:8000/app22/default/call/jsonrpc')
 result = service.load(1000)
 return locals()

 (1) Running it within web2py controller functions = It returns an error: 
 ValueError: No JSON object could be decoded

 (2) Running it in the browser =  
 http://127.0.0.1:8000/app22/default/call/jsonrpc/load/1000 it runs into 
 the same error as (1).

 (3) Running it in command prompt = it works like a charm.

 How do I get it to work within web2py controller functions? Thanks!




-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: Before update and After update callbacks are giving the same results on updating table

2014-07-09 Thread Anthony


 db.auth_user._before_update.append(lambda s,f: before_trigger_auth(s,f))
 db.auth_user._after_update.append(lambda s,f: after_trigger_auth(s,f))


First, note that if your callback is just an existing function that takes 
the parameters as they will be passed, there is no need to wrap it in a 
lambda -- just do:

db.auth_user._before_update(before_trigger_auth)

def before_trigger_auth(*args):
 print args
 print before
 f = args[1]
 rkey = f['registration_key']
 current.session.before_rkey = rkey


The f argument passed to the callback is a dictionary of the values that 
will be inserted into the record, not the existing values in the record (in 
fact, because an update can apply to multiple records, it would not 
generally be possible to have a single dictionary of existing values).

Note that updates do not involve retrieving the records from the database, 
so the DAL does not know the existing values of records to be updated. If 
you need the existing values, you will have to do a select query to 
retrieve the records, which you can do using the s argument passed to the 
callback (that argument is the DAL Set object used to identify the records 
to be updated). If you know there is only a single record to be updated, 
you could do:

def before_trigger_auth(s, f):
current.session.before_rkey = s.select().first().registration_key
   
def after_trigger_auth(s, f):
rkey = f['registration_key']
if current.session.before_rkey == pending and rkey == :
del current.session.before_rkey
ruseremail = f['email']
print Trigger an email update

In the above, also note that there is no reason to use *args rather than 
just explicitly defining the s and f arguments, and no reason to first 
test for current.session.before_rkey, as the check for pending will 
simply be false in case there is no before_rkey (because the session is a 
Storage object, attempts to access non-existent keys do not result in an 
exception but instead simply return None).

Anthony
 

 
 def after_trigger_auth(*args):
 print args
 print after
 f = args[1]
 rkey = f['registration_key']
 if current.session.before_rkey:
 if current.session.before_rkey == pending and rkey == :
 del current.session.before_rkey
 ruseremail = f['email']
 print Trigger an email update


 Now when I am editing the db.auth_user table record (using appadmin) to 
 delete the pending word from registeration_key, I have noticed that the 
 results from both and after callbacks were same i.e. registeration_key was 
 empty. 

 If I add the pending word in registration_key, then also I get the same 
 results from both the after and before callbacks.




-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [web2py] Re: SQLEDITABLE: redirect after submit

2014-07-09 Thread Fabiano Almeida
Hi Kato,

Thanks again!!

Fabiano.


2014-07-09 8:52 GMT-03:00 'kato' via web2py-users web2py@googlegroups.com:

 Hi.

 You can write same as SQLFORM.

 example.
 def demo070():
 response.title = 'demo070'
 response.view = 'plugin_sqleditable/sample.html'
 editable = SQLEDITABLE(db.employee_sheet, showid=False, maxrow=5)
 if editable.accepts(request.vars, session):
 response.flash = T('editable accepted')
 elif editable.errors:
 response.flash = T('editable has errors')
 else:
 response.flash = T('please fill out the editable')
 return dict(editable=editable)

 def demo071():
 response.title = 'demo071'
 response.view = 'plugin_sqleditable/sample.html'
 editable = SQLEDITABLE(db.employee_sheet, showid=False, maxrow=5)
 if editable.process().accepted:
 response.flash = T('editable accepted')
 elif editable.errors:
 response.flash = T('editable has errors')
 else:
 response.flash = T('please fill out the editable')
 return dict(editable=editable)

 2014年7月8日火曜日 20時00分59秒 UTC-3 Fabiano Almeida:

 Hi,

 Has like 'accepted' attribute in SQLEDITABLE?

 I need redirect to other page after 'ok' click.

 Thanks,

 Fabiano.

  --
 Resources:
 - http://web2py.com
 - http://web2py.com/book (Documentation)
 - http://github.com/web2py/web2py (Source code)
 - https://code.google.com/p/web2py/issues/list (Report Issues)
 ---
 You received this message because you are subscribed to the Google Groups
 web2py-users group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to web2py+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/d/optout.


-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: DAL Bug?

2014-07-09 Thread Anthony
Can you show your delete code that generated SQL without any condition?

On Tuesday, July 8, 2014 1:18:45 PM UTC-4, Leonel Câmara wrote:

 I noticed I was getting zero returned from my deletes. After reading the 
 python docs I found this:

 With SQLite versions before 3.6.5, rowcount 
 https://docs.python.org/2/library/sqlite3.html#sqlite3.Cursor.rowcount is 
 set to 0 if you make a DELETE FROM table without any condition.

 Available here: 
 https://docs.python.org/2/library/sqlite3.html#sqlite3.Cursor.rowcount

 Shouldn't the DAL handle this better? Maybe in SQLiteAdapter which should 
 already have a delete method overload anyway since there's special case 
 code for it in the BaseAdapter which shouldn't be there as special cases 
 should be in the specific implementations.
  







-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] CRON Startup Script DB Driver

2014-07-09 Thread 'Michael Gheith' via web2py-users
Hello web2py community!

I created a shell script that essentially checks if web2py is running or 
not.  Every hour CRON will run my script.  If web2py is not running then it 
starts web2py from source with the following:

export web2py_path=/Users/superman/desktop/web2py

export port=8000

cd $web2py_path  ./web2py.py --nogui -p $port -i 0.0.0.0 -a 
'mysecretpassword' 


This works just fine (almost).  If I now navigate to one of my applications 
that uses a SQLite database everything is fine.  If I navigate to one of my 
applications that uses an Oracle database (cx_Oracle driver) the 
application throws a ticket with the following:
type 'exceptions.RuntimeError' Failure to connect, tried 5 times: 
Traceback (most recent call last): File 
/Users/mgheith/Desktop/web2py/gluon/dal.py, line 7845, in __init__ 
self._adapter = ADAPTERS[self._dbname](**kwargs) File 
/Users/mgheith/Desktop/web2py/gluon/dal.py, line 688, in __call__ obj = 
super(AdapterMeta, cls).__call__(*args, **kwargs) File 
/Users/mgheith/Desktop/web2py/gluon/dal.py, line 3221, in __init__ if 
do_connect: self.find_driver(adapter_args,uri) File 
/Users/mgheith/Desktop/web2py/gluon/dal.py, line 830, in find_driver 
raise RuntimeError(no driver available %s % str(self.drivers)) 
RuntimeError: no driver available ('cx_Oracle',)

Why is it that when CRON runs my shell script that my application, which 
uses the cx_Oracle driver, is throwing the ticket that no cx_Oracle driver 
exists?  If I run my shell script without CRON in the terminal all is fine. 
 Any ideas?

By the way- this isn't a web2py issue.  It's a CRON thing, so for all you 
CRON experts out there please advise :)

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: sublime text 3

2014-07-09 Thread JorgeH
You mean in the OS dir path??

On Wednesday, July 9, 2014 7:13:46 AM UTC-5, Massimo Di Pierro wrote:

 If your problem is the lack of autocompletion try add gluon to path and 
 include if 0: from gluon import * on your files. Everything else should 
 work out of the box.

 On Wednesday, 9 July 2014 04:29:49 UTC-5, eric cuver wrote:

 hello,

 how can we do to configure sublime text 3 to work web2py 



-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Improvement: Adding component modules to environment

2014-07-09 Thread Louis Amon
Say you want to develop and distribute a plugin, and that this plugin 
relies on a third-party module or package.
For the example, we'll say the third-party is matplotlib.

In order to distribute your plugin, you'd need give instructions so that 
your plugin's users install matplotlib either in their environment or in 
the site-package folder of their web2py installation.

One way to avoid the hassle is to install matplotlib in the modules folder 
of your application. The custom_import function of gluon should do the rest 
of the work. Great.

Now what if you develop a big application that relies on 4 plugins that 
each rely on 6 third-parties ?
Should you install all 24 third-parties in your module folder ?
Wouldn't it become quite a mess ?

Here are suggestions to handling this issue :

   - Option 1:
   
   Modify the custom_import function so that it could add subdirectories of 
   the modules folder that are plugin components (for instance all file paths 
   that start with 'APP_NAME/modules/PLUGIN_NAME')
   
   Adding a plugin's module folder to the environment could be optional, 
   just like running a plugin's models is optional and possible via the 
   'models_to_run' variable.
   
   - Option 2:
   
   Implementing pip inside web2py to manage plugin requirements upon 
   install.
   This way, a plugin's installation would automatically trigger the 
   installation of required third-parties into the site-package folder.
   
In my opinion both solutions could be interesting and complementary.

Feel free to contribute with your own opinion !

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: DAL Bug?

2014-07-09 Thread Leonel Câmara
The code was literally just this line:

count = db(db.static_page.id == request.args(0)).delete()

I have no idea why the sql is going without a condition, the static page 
does get deleted. I only noticed the problem because the next lines were:

if not count:
raise HTTP(404)

And I was constantly getting a 404.

I tested this on the command line after inserting a static page

* db(db.static_page.id  0).select().first()*
Row {'body': 'pvefvefv/p', 'lang': 'pt', 'name': 'vevefv', 
'is_active': Tru
e, 'created_by': 1L, 'created_on': datetime.datetime(2014, 7, 9, 16, 8, 
51), 'mo
dified_on': datetime.datetime(2014, 7, 9, 16, 8, 51), 'modified_by': 1L, 
'id': 1
L}
* count = db(db.static_page.id == 1).delete()*
* count*
0
* db(db.static_page.id  0).select().first()*
**

So as you can see it's returning zero when in fact it's deleting one 
record, as one can see in the final query that nothing is returned.

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: DAL Bug?

2014-07-09 Thread Leonel Câmara
Humm wait a minute, could this be because I enabled versioning and nothing 
is in fact deleted?

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [web2py] The Zen of web2py

2014-07-09 Thread Massimo Di Pierro
I think this would help a lot web2py.

I can share some personal experience. In my experience the best articles 
are those that show how to build something and focus on one feature at the 
time. People are very religious about certain frameworks and for the 
message to get across one really has to convince them that web2py will save 
them time and pain. One cannot convince everybody, but one can choose a 
target audience.

I like comparison: this is how you do X in Django (for example) - this is 
how you do in web2py. The reason I like them is that they talk to a clear 
audience and users of both frameworks have something to learn from each 
other. Mind some people are very touchy and they do not like to be told 
that another kid has a shiner tool.

Massimo



On Wednesday, 9 July 2014 08:12:55 UTC-5, yamandu wrote:

 I like it.

 I wonder if we could do it in an organized in some way.

 Recently I lost to convince my boss to change everything to web2py because 
 there are few developers that know it.
 So it would be very good to have a massive community. As we will have more 
 opportunities to work on the framework we love best.

 Groups like this have little exposure outside. We need something else!


 2014-07-09 10:03 GMT-03:00 Philip Kilner p...@xfr.co.uk:

 Hi,

 On 09/07/14 13:31, horridohobbyist wrote:

 Let's improve web2py's PR. A blast of articles over the next year could
 change the fortunes of our favourite web framework.

  
 Good piece, great finish.

 I'll take that as a challenge, and see if I can describe my own journey 
 from desktop databases to web2py via Zope and Plone as succinctly!

 :-)


 -- 

 Regards,

 PhilK


 e: p...@xfr.co.uk - m: 07775 796 747

 'work as if you lived in the early days of a better nation'
 - alasdair gray


 -- 
 Resources:
 - http://web2py.com
 - http://web2py.com/book (Documentation)
 - http://github.com/web2py/web2py (Source code)
 - https://code.google.com/p/web2py/issues/list (Report Issues)
 --- You received this message because you are subscribed to the Google 
 Groups web2py-users group.
 To unsubscribe from this group and stop receiving emails from it, send an 
 email to web2py+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/d/optout.




 -- 
 Att.

 Carlos J. Costa
 Cientista da Computação
 Esp. Gestão em Telecom
 º))
  

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: sublime text 3

2014-07-09 Thread Massimo Di Pierro
I do know sublime text. I am assuming there is a way to tell it where to 
look for python modules for autocomplete.

On Wednesday, 9 July 2014 10:06:25 UTC-5, JorgeH wrote:

 You mean in the OS dir path??

 On Wednesday, July 9, 2014 7:13:46 AM UTC-5, Massimo Di Pierro wrote:

 If your problem is the lack of autocompletion try add gluon to path and 
 include if 0: from gluon import * on your files. Everything else should 
 work out of the box.

 On Wednesday, 9 July 2014 04:29:49 UTC-5, eric cuver wrote:

 hello,

 how can we do to configure sublime text 3 to work web2py 



-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: DAL Bug?

2014-07-09 Thread Massimo Di Pierro
yes/.That is it. Please open a ticket about this, it may be considered a 
bug even if we should discuss it on web2py-developers. Not so clear cut.


On Wednesday, 9 July 2014 10:16:10 UTC-5, Leonel Câmara wrote:

 Humm wait a minute, could this be because I enabled versioning and nothing 
 is in fact deleted?


-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: sublime text 3

2014-07-09 Thread eric cuver
I do not understand how to do it to add the folder gluon to path 

Le mercredi 9 juillet 2014 14:13:46 UTC+2, Massimo Di Pierro a écrit :

 If your problem is the lack of autocompletion try add gluon to path and 
 include if 0: from gluon import * on your files. Everything else should 
 work out of the box.

 On Wednesday, 9 July 2014 04:29:49 UTC-5, eric cuver wrote:

 hello,

 how can we do to configure sublime text 3 to work web2py 



-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: SQLEDITABLE: redirect after submit

2014-07-09 Thread 'kato' via web2py-users
I was a little wrong. If you want to redirect, and will not work because 
such in the ajax. 
Please write as the following.

def demo050():
response.title = 'demo050'
response.view = 'plugin_sqleditable/sample.html'
editable = SQLEDITABLE(db.employee_sheet, showid=False, maxrow=5, 
deletable=True).process(next=URL('static', 'success.html'))
return dict(editable=editable)



2014年7月9日水曜日 8時52分21秒 UTC-3 kato:

 Hi.

 You can write same as SQLFORM.

 example.
 def demo070():
 response.title = 'demo070'
 response.view = 'plugin_sqleditable/sample.html'
 editable = SQLEDITABLE(db.employee_sheet, showid=False, maxrow=5)
 if editable.accepts(request.vars, session):
 response.flash = T('editable accepted')
 elif editable.errors:
 response.flash = T('editable has errors')
 else:
 response.flash = T('please fill out the editable')
 return dict(editable=editable)

 def demo071():
 response.title = 'demo071'
 response.view = 'plugin_sqleditable/sample.html'
 editable = SQLEDITABLE(db.employee_sheet, showid=False, maxrow=5)
 if editable.process().accepted:
 response.flash = T('editable accepted')
 elif editable.errors:
 response.flash = T('editable has errors')
 else:
 response.flash = T('please fill out the editable')
 return dict(editable=editable)

 2014年7月8日火曜日 20時00分59秒 UTC-3 Fabiano Almeida:

 Hi,

 Has like 'accepted' attribute in SQLEDITABLE?

 I need redirect to other page after 'ok' click.

 Thanks,

 Fabiano.



-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [web2py] The Zen of web2py

2014-07-09 Thread Carlos Costa
I agree with you Massimo, the best ones are those that built something.
Videos like this http://vimeo.com/6782736 helped me to decide to stay with
web2py.
Not only that title is quite marketish but content is so true.


2014-07-09 12:28 GMT-03:00 Massimo Di Pierro massimo.dipie...@gmail.com:

 I think this would help a lot web2py.

 I can share some personal experience. In my experience the best articles
 are those that show how to build something and focus on one feature at the
 time. People are very religious about certain frameworks and for the
 message to get across one really has to convince them that web2py will save
 them time and pain. One cannot convince everybody, but one can choose a
 target audience.

 I like comparison: this is how you do X in Django (for example) - this is
 how you do in web2py. The reason I like them is that they talk to a clear
 audience and users of both frameworks have something to learn from each
 other. Mind some people are very touchy and they do not like to be told
 that another kid has a shiner tool.

 Massimo



 On Wednesday, 9 July 2014 08:12:55 UTC-5, yamandu wrote:

 I like it.

 I wonder if we could do it in an organized in some way.

 Recently I lost to convince my boss to change everything to web2py
 because there are few developers that know it.
 So it would be very good to have a massive community. As we will have
 more opportunities to work on the framework we love best.

 Groups like this have little exposure outside. We need something else!


 2014-07-09 10:03 GMT-03:00 Philip Kilner p...@xfr.co.uk:

 Hi,

 On 09/07/14 13:31, horridohobbyist wrote:

 Let's improve web2py's PR. A blast of articles over the next year could
 change the fortunes of our favourite web framework.


 Good piece, great finish.

 I'll take that as a challenge, and see if I can describe my own journey
 from desktop databases to web2py via Zope and Plone as succinctly!

 :-)


 --

 Regards,

 PhilK


 e: p...@xfr.co.uk - m: 07775 796 747

 'work as if you lived in the early days of a better nation'
 - alasdair gray


 --
 Resources:
 - http://web2py.com
 - http://web2py.com/book (Documentation)
 - http://github.com/web2py/web2py (Source code)
 - https://code.google.com/p/web2py/issues/list (Report Issues)
 --- You received this message because you are subscribed to the Google
 Groups web2py-users group.
 To unsubscribe from this group and stop receiving emails from it, send
 an email to web2py+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/d/optout.




 --
 Att.

 Carlos J. Costa
 Cientista da Computação
 Esp. Gestão em Telecom
 º))

  --
 Resources:
 - http://web2py.com
 - http://web2py.com/book (Documentation)
 - http://github.com/web2py/web2py (Source code)
 - https://code.google.com/p/web2py/issues/list (Report Issues)
 ---
 You received this message because you are subscribed to the Google Groups
 web2py-users group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to web2py+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/d/optout.




-- 
Att.

Carlos J. Costa
Cientista da Computação
Esp. Gestão em Telecom
º))

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] query with multiple values

2014-07-09 Thread Fabiano Almeida
Hi,

How to make a query with multiple values to field?


q = db(db.auth_membership.group_id in [2,3,4]).select()

thanks,

Fabiano.

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [web2py] Re: SQLEDITABLE: redirect after submit

2014-07-09 Thread Fabiano Almeida
Thanks Kato!

Fabiano.


2014-07-09 9:24 GMT-03:00 'kato' via web2py-users web2py@googlegroups.com:

 I was a little wrong. If you want to redirect, and will not work because
 such in the ajax.
 Please write as the following.

 def demo050():
 response.title = 'demo050'
 response.view = 'plugin_sqleditable/sample.html'
 editable = SQLEDITABLE(db.employee_sheet, showid=False, maxrow=5,
 deletable=True).process(next=URL('static', 'success.html'))
 return dict(editable=editable)



 2014年7月9日水曜日 8時52分21秒 UTC-3 kato:

 Hi.

 You can write same as SQLFORM.

 example.
 def demo070():
 response.title = 'demo070'
 response.view = 'plugin_sqleditable/sample.html'
 editable = SQLEDITABLE(db.employee_sheet, showid=False, maxrow=5)
 if editable.accepts(request.vars, session):
 response.flash = T('editable accepted')
 elif editable.errors:
 response.flash = T('editable has errors')
 else:
 response.flash = T('please fill out the editable')
 return dict(editable=editable)

 def demo071():
 response.title = 'demo071'
 response.view = 'plugin_sqleditable/sample.html'
 editable = SQLEDITABLE(db.employee_sheet, showid=False, maxrow=5)
 if editable.process().accepted:
 response.flash = T('editable accepted')
 elif editable.errors:
 response.flash = T('editable has errors')
 else:
 response.flash = T('please fill out the editable')
 return dict(editable=editable)

 2014年7月8日火曜日 20時00分59秒 UTC-3 Fabiano Almeida:

 Hi,

 Has like 'accepted' attribute in SQLEDITABLE?

 I need redirect to other page after 'ok' click.

 Thanks,

 Fabiano.

  --
 Resources:
 - http://web2py.com
 - http://web2py.com/book (Documentation)
 - http://github.com/web2py/web2py (Source code)
 - https://code.google.com/p/web2py/issues/list (Report Issues)
 ---
 You received this message because you are subscribed to the Google Groups
 web2py-users group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to web2py+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/d/optout.


-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [web2py] The Zen of web2py

2014-07-09 Thread Michele Comitini
I agree, web2py is a pragmatic framework. so the best way to make it
shine is comparing how to get something done: there is not (only)
theoretical blather behind it, facts and results drive web2py from the
start.

Usually is better avoiding critics towards others, but rather underline the
qualities of web2py.  That's a fundamental salesman skill.






2014-07-09 17:36 GMT+02:00 Carlos Costa yamandu.co...@gmail.com:

 I agree with you Massimo, the best ones are those that built something.
 Videos like this http://vimeo.com/6782736 helped me to decide to stay
 with web2py.
 Not only that title is quite marketish but content is so true.


 2014-07-09 12:28 GMT-03:00 Massimo Di Pierro massimo.dipie...@gmail.com:

 I think this would help a lot web2py.

 I can share some personal experience. In my experience the best articles
 are those that show how to build something and focus on one feature at the
 time. People are very religious about certain frameworks and for the
 message to get across one really has to convince them that web2py will save
 them time and pain. One cannot convince everybody, but one can choose a
 target audience.

 I like comparison: this is how you do X in Django (for example) - this is
 how you do in web2py. The reason I like them is that they talk to a clear
 audience and users of both frameworks have something to learn from each
 other. Mind some people are very touchy and they do not like to be told
 that another kid has a shiner tool.

 Massimo



 On Wednesday, 9 July 2014 08:12:55 UTC-5, yamandu wrote:

 I like it.

 I wonder if we could do it in an organized in some way.

 Recently I lost to convince my boss to change everything to web2py
 because there are few developers that know it.
 So it would be very good to have a massive community. As we will have
 more opportunities to work on the framework we love best.

 Groups like this have little exposure outside. We need something else!


 2014-07-09 10:03 GMT-03:00 Philip Kilner p...@xfr.co.uk:

 Hi,

 On 09/07/14 13:31, horridohobbyist wrote:

 Let's improve web2py's PR. A blast of articles over the next year could
 change the fortunes of our favourite web framework.


 Good piece, great finish.

 I'll take that as a challenge, and see if I can describe my own journey
 from desktop databases to web2py via Zope and Plone as succinctly!

 :-)


 --

 Regards,

 PhilK


 e: p...@xfr.co.uk - m: 07775 796 747

 'work as if you lived in the early days of a better nation'
 - alasdair gray


 --
 Resources:
 - http://web2py.com
 - http://web2py.com/book (Documentation)
 - http://github.com/web2py/web2py (Source code)
 - https://code.google.com/p/web2py/issues/list (Report Issues)
 --- You received this message because you are subscribed to the Google
 Groups web2py-users group.
 To unsubscribe from this group and stop receiving emails from it, send
 an email to web2py+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/d/optout.




 --
 Att.

 Carlos J. Costa
 Cientista da Computação
 Esp. Gestão em Telecom
 º))

  --
 Resources:
 - http://web2py.com
 - http://web2py.com/book (Documentation)
 - http://github.com/web2py/web2py (Source code)
 - https://code.google.com/p/web2py/issues/list (Report Issues)
 ---
 You received this message because you are subscribed to the Google Groups
 web2py-users group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to web2py+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/d/optout.




 --
 Att.

 Carlos J. Costa
 Cientista da Computação
 Esp. Gestão em Telecom
 º))

 --
 Resources:
 - http://web2py.com
 - http://web2py.com/book (Documentation)
 - http://github.com/web2py/web2py (Source code)
 - https://code.google.com/p/web2py/issues/list (Report Issues)
 ---
 You received this message because you are subscribed to the Google Groups
 web2py-users group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to web2py+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/d/optout.


-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [web2py] query with multiple values

2014-07-09 Thread Vinicius Assef
Use contains [1].

[1] 
http://web2py.com/books/default/chapter/29/06/the-database-abstraction-layer#like--regexp--startswith--endswith--contains--upper--lower

On Wed, Jul 9, 2014 at 12:47 PM, Fabiano Almeida fabi...@techno7.com.br wrote:
 Hi,

 How to make a query with multiple values to field?


 q = db(db.auth_membership.group_id in [2,3,4]).select()

 thanks,

 Fabiano.

 --
 Resources:
 - http://web2py.com
 - http://web2py.com/book (Documentation)
 - http://github.com/web2py/web2py (Source code)
 - https://code.google.com/p/web2py/issues/list (Report Issues)
 ---
 You received this message because you are subscribed to the Google Groups
 web2py-users group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to web2py+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/d/optout.

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: DAL Bug?

2014-07-09 Thread Leonel Câmara
Thanks everyone for helping me sort this out, issue submitted:

https://code.google.com/p/web2py/issues/detail?id=1948

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: query with multiple values

2014-07-09 Thread Leonel Câmara
q = db(db.auth_membership.group_id.belongs([2,3,4]).select()

Also see:
http://www.web2py.com/books/default/chapter/29/06/the-database-abstraction-layer#belongs

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [web2py] query with multiple values

2014-07-09 Thread Fabiano Almeida
Hi Vinicius,

I tested it contains, but it did not work with integer field.

Thanks,

Fabiano.


2014-07-09 12:55 GMT-03:00 Vinicius Assef vinicius...@gmail.com:

 Use contains [1].

 [1]
 http://web2py.com/books/default/chapter/29/06/the-database-abstraction-layer#like--regexp--startswith--endswith--contains--upper--lower

 On Wed, Jul 9, 2014 at 12:47 PM, Fabiano Almeida fabi...@techno7.com.br
 wrote:
  Hi,
 
  How to make a query with multiple values to field?
 
 
  q = db(db.auth_membership.group_id in [2,3,4]).select()
 
  thanks,
 
  Fabiano.
 
  --
  Resources:
  - http://web2py.com
  - http://web2py.com/book (Documentation)
  - http://github.com/web2py/web2py (Source code)
  - https://code.google.com/p/web2py/issues/list (Report Issues)
  ---
  You received this message because you are subscribed to the Google Groups
  web2py-users group.
  To unsubscribe from this group and stop receiving emails from it, send an
  email to web2py+unsubscr...@googlegroups.com.
  For more options, visit https://groups.google.com/d/optout.

 --
 Resources:
 - http://web2py.com
 - http://web2py.com/book (Documentation)
 - http://github.com/web2py/web2py (Source code)
 - https://code.google.com/p/web2py/issues/list (Report Issues)
 ---
 You received this message because you are subscribed to the Google Groups
 web2py-users group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to web2py+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/d/optout.


-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [web2py] Re: query with multiple values

2014-07-09 Thread Fabiano Almeida
Hi Leonel,

belongs solve my question.

Thanks.

Fabiano.


2014-07-09 13:02 GMT-03:00 Leonel Câmara leonelcam...@gmail.com:

 q = db(db.auth_membership.group_id.belongs([2,3,4]).select()

 Also see:

 http://www.web2py.com/books/default/chapter/29/06/the-database-abstraction-layer#belongs

 --
 Resources:
 - http://web2py.com
 - http://web2py.com/book (Documentation)
 - http://github.com/web2py/web2py (Source code)
 - https://code.google.com/p/web2py/issues/list (Report Issues)
 ---
 You received this message because you are subscribed to the Google Groups
 web2py-users group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to web2py+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/d/optout.


-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: sublime text 3

2014-07-09 Thread JorgeH
Thanks for the tip

And yet...

Could you post a fool-proof example?

Thanks

On Wednesday, July 9, 2014 10:31:36 AM UTC-5, Massimo Di Pierro wrote:

 I do know sublime text. I am assuming there is a way to tell it where to 
 look for python modules for autocomplete.

 On Wednesday, 9 July 2014 10:06:25 UTC-5, JorgeH wrote:

 You mean in the OS dir path??

 On Wednesday, July 9, 2014 7:13:46 AM UTC-5, Massimo Di Pierro wrote:

 If your problem is the lack of autocompletion try add gluon to path and 
 include if 0: from gluon import * on your files. Everything else should 
 work out of the box.

 On Wednesday, 9 July 2014 04:29:49 UTC-5, eric cuver wrote:

 hello,

 how can we do to configure sublime text 3 to work web2py 



-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] help with join

2014-07-09 Thread Fabiano Almeida
Hi,

I'm trying to do a join table auth_user and auth_membership. I need the
list of users with membership.group_id in [2,3,4].

I tried to create a query for membership before the join, but it did not
work.

Is to make this join? How?

Thanks in advance,

Fabiano.

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: help with join

2014-07-09 Thread Leonel Câmara
list_of_users_in_all_groups = db( (db.auth_membership.group_id.belongs([2, 
3, 4]))  (db.auth_membership.userd_id == db.auth_user.id) 
).select(db.auth_user.ALL)

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: Possible to add a field to bulk_insert?

2014-07-09 Thread LoveWeb2py
Is the most efficient way to just modify the json before I perform the 
bulk_insert? Or should I break out the fields individually.

On Tuesday, July 8, 2014 10:37:00 PM UTC-4, LoveWeb2py wrote:

 I have data in json format and I love the db.table.bulk_insert(jsondata) 
 feature

 However, if I try to add a field it doesn't take it. For example: 
 db.table.bulk_insert(jsondata, modified_by=db.auth_user['auth.user.id
 ]['username'])

 Any thoughts on how I could accomplish this? 


-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: sublime text 3

2014-07-09 Thread Willoughby
This is a sublime text question - if you search, many have suggested using 
this tool:
https://github.com/SublimeCodeIntel/SublimeCodeIntel


On Wednesday, July 9, 2014 12:24:28 PM UTC-4, JorgeH wrote:

 Thanks for the tip

 And yet...

 Could you post a fool-proof example?

 Thanks

 On Wednesday, July 9, 2014 10:31:36 AM UTC-5, Massimo Di Pierro wrote:

 I do know sublime text. I am assuming there is a way to tell it where to 
 look for python modules for autocomplete.

 On Wednesday, 9 July 2014 10:06:25 UTC-5, JorgeH wrote:

 You mean in the OS dir path??

 On Wednesday, July 9, 2014 7:13:46 AM UTC-5, Massimo Di Pierro wrote:

 If your problem is the lack of autocompletion try add gluon to path and 
 include if 0: from gluon import * on your files. Everything else should 
 work out of the box.

 On Wednesday, 9 July 2014 04:29:49 UTC-5, eric cuver wrote:

 hello,

 how can we do to configure sublime text 3 to work web2py 



-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [web2py] Re: help with join

2014-07-09 Thread Fabiano Almeida
Great Leonel!

Thanks a lot!

Fabiano.


2014-07-09 13:31 GMT-03:00 Leonel Câmara leonelcam...@gmail.com:

 list_of_users_in_all_groups = db( (db.auth_membership.group_id.belongs([2,
 3, 4]))  (db.auth_membership.userd_id == db.auth_user.id)
 ).select(db.auth_user.ALL)

 --
 Resources:
 - http://web2py.com
 - http://web2py.com/book (Documentation)
 - http://github.com/web2py/web2py (Source code)
 - https://code.google.com/p/web2py/issues/list (Report Issues)
 ---
 You received this message because you are subscribed to the Google Groups
 web2py-users group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to web2py+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/d/optout.


-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [web2py] The Zen of web2py

2014-07-09 Thread horridohobbyist
Excellent point. We don't need to criticize Django. We can compare Django 
and web2py side by side, and show how web2py makes the job so much easier. 
Which brings up another point...

One of the most common refrains I hear about Django vs something like 
web2py is that when you scale to really BIG applications, Django has the 
advantage in terms of flexibility and power (by virtue of being more 
explicit). We need to quash this notion immediately. Developers are very 
anal when it comes to whether a tool can be used to build on a grand scale. 
We need to show that web2py has no limitations in this regard.

A most appropriate article, then, would be one which points to several 
(high profile?) enterprise examples where web2py is used to build BIG 
applications. I'm sick of hearing how Django was used in Disqus and 
Instagram and Mozilla and NY Times and Pinterest.

Cheers.


On Wednesday, 9 July 2014 11:53:01 UTC-4, Michele Comitini wrote:

 I agree, web2py is a pragmatic framework. so the best way to make it 
 shine is comparing how to get something done: there is not (only) 
 theoretical blather behind it, facts and results drive web2py from the 
 start.

 Usually is better avoiding critics towards others, but rather underline 
 the qualities of web2py.  That's a fundamental salesman skill.






 2014-07-09 17:36 GMT+02:00 Carlos Costa yamand...@gmail.com javascript:
 :

 I agree with you Massimo, the best ones are those that built something.
 Videos like this http://vimeo.com/6782736 helped me to decide to stay 
 with web2py.
  Not only that title is quite marketish but content is so true.


 2014-07-09 12:28 GMT-03:00 Massimo Di Pierro massimo@gmail.com 
 javascript::

 I think this would help a lot web2py.

 I can share some personal experience. In my experience the best articles 
 are those that show how to build something and focus on one feature at the 
 time. People are very religious about certain frameworks and for the 
 message to get across one really has to convince them that web2py will save 
 them time and pain. One cannot convince everybody, but one can choose a 
 target audience.

 I like comparison: this is how you do X in Django (for example) - this 
 is how you do in web2py. The reason I like them is that they talk to a 
 clear audience and users of both frameworks have something to learn from 
 each other. Mind some people are very touchy and they do not like to be 
 told that another kid has a shiner tool.

 Massimo



 On Wednesday, 9 July 2014 08:12:55 UTC-5, yamandu wrote:

 I like it.

 I wonder if we could do it in an organized in some way.

 Recently I lost to convince my boss to change everything to web2py 
 because there are few developers that know it.
 So it would be very good to have a massive community. As we will have 
 more opportunities to work on the framework we love best.

 Groups like this have little exposure outside. We need something else!


 2014-07-09 10:03 GMT-03:00 Philip Kilner ph...@xfr.co.uk javascript:
 :

 Hi,

 On 09/07/14 13:31, horridohobbyist wrote:

 Let's improve web2py's PR. A blast of articles over the next year 
 could
 change the fortunes of our favourite web framework.

  
 Good piece, great finish.

 I'll take that as a challenge, and see if I can describe my own 
 journey from desktop databases to web2py via Zope and Plone as succinctly!

 :-)


 -- 

 Regards,

 PhilK


 e: ph...@xfr.co.uk javascript: - m: 07775 796 747

 'work as if you lived in the early days of a better nation'
 - alasdair gray


 -- 
 Resources:
 - http://web2py.com
 - http://web2py.com/book (Documentation)
 - http://github.com/web2py/web2py (Source code)
 - https://code.google.com/p/web2py/issues/list (Report Issues)
 --- You received this message because you are subscribed to the Google 
 Groups web2py-users group.
 To unsubscribe from this group and stop receiving emails from it, send 
 an email to web2py+un...@googlegroups.com javascript:.
 For more options, visit https://groups.google.com/d/optout.




 -- 
 Att.

 Carlos J. Costa
 Cientista da Computação
 Esp. Gestão em Telecom
 º))
  
  -- 
 Resources:
 - http://web2py.com
 - http://web2py.com/book (Documentation)
 - http://github.com/web2py/web2py (Source code)
 - https://code.google.com/p/web2py/issues/list (Report Issues)
 --- 
 You received this message because you are subscribed to the Google 
 Groups web2py-users group.
 To unsubscribe from this group and stop receiving emails from it, send 
 an email to web2py+un...@googlegroups.com javascript:.
 For more options, visit https://groups.google.com/d/optout.




 -- 
 Att.

 Carlos J. Costa
 Cientista da Computação
 Esp. Gestão em Telecom
 º))
  
 -- 
 Resources:
 - http://web2py.com
 - http://web2py.com/book (Documentation)
 - http://github.com/web2py/web2py (Source code)
 - https://code.google.com/p/web2py/issues/list (Report Issues)
 --- 
 You received this message because you are subscribed to the Google Groups 
 web2py-users group.
 To unsubscribe 

[web2py] SQLFORM.grid detect_record_change

2014-07-09 Thread Otto Domínguez
Is it possible to use detect_record_change while submitting an edit with 
SQLFORM.grid. I'm talking the remotely possible but still possible case 
where two users choose to edit the same record simultaneously. Just the 
first one to submit her/his change should be successful. The second one 
should fail because the record has changed between record retrieval to 
populate edit form and the submission of changes. The Book gives code 
snippet to use SQLFORM (not .grid) but I do not know how to put a flash 
message where it says # do something HERE FROM INSIDE A SQLFORM.grid? 
because this code is managed by SQLFORM.grid, not by me as the case the 
Book shows.

def edit_dog():
dog = db.dog(request.args(0)) or redirect(URL('error'))
form=SQLFORM(db.dog,dog)
form.process(detect_record_change=True)
if form.record_changed:
# do something HERE FROM INSIDE A SQLFORM.grid?
elif form.accepted:
# do something else
else:
# do nothing
return dict(form=form)


-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Virtual Fields in auth_user?

2014-07-09 Thread Fabiano Almeida
Hi again,

It's possible insert virtual field in auth_user? how?

thanks,

Fabiano.

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] How to mark mandatory fields in SQLFORM.grid?

2014-07-09 Thread Fabiano Almeida
Hi @all!

I am using SQLFORM.grid extensively in my application. How to visually mark 
the required fields on the form when the user adds record?

Thanks in advance,

Fabiano.

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: How to mark mandatory fields in SQLFORM.grid?

2014-07-09 Thread Anthony
You can do something like this in your models:

required = SPAN('* required', _class='required')

db.define_table('mytable', Field('myfield', comment=required))

Use CSS to style the comment (e.g., make the text red).

Anthony

On Wednesday, July 9, 2014 4:08:00 PM UTC-4, Fabiano Almeida wrote:

 Hi @all!

 I am using SQLFORM.grid extensively in my application. How to visually 
 mark the required fields on the form when the user adds record?

 Thanks in advance,

 Fabiano.


-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: How to mark mandatory fields in SQLFORM.grid?

2014-07-09 Thread Anthony
There is also this plugin, which automates the process based on field 
validators: http://dev.s-cubism.com/plugin_notemptymarker

Anthony

On Wednesday, July 9, 2014 5:12:57 PM UTC-4, Anthony wrote:

 You can do something like this in your models:

 required = SPAN('* required', _class='required')

 db.define_table('mytable', Field('myfield', comment=required))

 Use CSS to style the comment (e.g., make the text red).

 Anthony

 On Wednesday, July 9, 2014 4:08:00 PM UTC-4, Fabiano Almeida wrote:

 Hi @all!

 I am using SQLFORM.grid extensively in my application. How to visually 
 mark the required fields on the form when the user adds record?

 Thanks in advance,

 Fabiano.



-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: CRON Startup Script DB Driver

2014-07-09 Thread 'Michael Gheith' via web2py-users
It turns out that Cron didn't have access to cx_Oracle because it wasn't in 
the environment.  Oops, should have checked that out first thing!

On Wednesday, July 9, 2014 9:57:05 AM UTC-5, Michael Gheith wrote:

 Hello web2py community!

 I created a shell script that essentially checks if web2py is running or 
 not.  Every hour CRON will run my script.  If web2py is not running then it 
 starts web2py from source with the following:

 export web2py_path=/Users/superman/desktop/web2py

 export port=8000

 cd $web2py_path  ./web2py.py --nogui -p $port -i 0.0.0.0 -a 
 'mysecretpassword' 


 This works just fine (almost).  If I now navigate to one of my 
 applications that uses a SQLite database everything is fine.  If I navigate 
 to one of my applications that uses an Oracle database (cx_Oracle driver) 
 the application throws a ticket with the following:
 type 'exceptions.RuntimeError' Failure to connect, tried 5 times: 
 Traceback (most recent call last): File 
 /Users/mgheith/Desktop/web2py/gluon/dal.py, line 7845, in __init__ 
 self._adapter = ADAPTERS[self._dbname](**kwargs) File 
 /Users/mgheith/Desktop/web2py/gluon/dal.py, line 688, in __call__ obj = 
 super(AdapterMeta, cls).__call__(*args, **kwargs) File 
 /Users/mgheith/Desktop/web2py/gluon/dal.py, line 3221, in __init__ if 
 do_connect: self.find_driver(adapter_args,uri) File 
 /Users/mgheith/Desktop/web2py/gluon/dal.py, line 830, in find_driver 
 raise RuntimeError(no driver available %s % str(self.drivers)) 
 RuntimeError: no driver available ('cx_Oracle',)

 Why is it that when CRON runs my shell script that my application, which 
 uses the cx_Oracle driver, is throwing the ticket that no cx_Oracle driver 
 exists?  If I run my shell script without CRON in the terminal all is fine. 
  Any ideas?

 By the way- this isn't a web2py issue.  It's a CRON thing, so for all you 
 CRON experts out there please advise :)


-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Broken ajax links giving unrecognized expression error

2014-07-09 Thread Ian W. Scott
Some ajax links that used to work have just broken and I'm not sure where 
to start in debugging. The links target a load component on the page (using 
cid) and they have started throwing this error:

Syntax error, unrecognized expression: 
 /paideia/plugin_listandedit/edit.load/word_forms/546?orderby=idtablename=word_forms


The unrecognized expression is simply the url from the link. I've tried 
re-downloading the web2py source and updating web2py.js but neither seems 
to help. The only thing I've done that could have broken it is update to 
bootstrap3 using the package put together by Paolo Caruccio. But I don't 
know enough about web2py.js to guess where a conflict might lie. 

Any suggestions? 

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [web2py] Re: AWS Elastic Beanstalk installation Recipe

2014-07-09 Thread Diogo Munaro
I'm with some problems here... I really hate .table files.

That's my deploy routine:

   1. download web2py from src
   2. get my application from git and put inside web2py
   3. remove some unused folders
   4. backup my database
   5. migrate my database structure *(that's the point!!)*
   6. if ok, finished, else restore backup and last code

5 is my problem. I have a database structure and a lot of data but new code 
come with new table structure (that needs database migration). So I have 
some fails:

   - If I maintain .table files into databases folder on localhost, than 
   the hash is different from production hash (because connection is 
   different). Solution: rename .table files for new db._uri_hash (It's not so 
   beautiful)
   - If I set migrate=False I need to do migrations setting sql into my 
   mysql database (not good and I'm doing by now).
   - If I not mantain .table files I need fake_migrate from previews deploy 
   and than migrate. Looks good but need a lot of extra work and I don't know 
   if it work.

What's the best way? Are there new suggestions?

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [web2py] Re: How to mark mandatory fields in SQLFORM.grid?

2014-07-09 Thread Fabiano Almeida
Hi Anthony,

Great plugin!

Thanks,

Fabiano.


2014-07-09 18:15 GMT-03:00 Anthony abasta...@gmail.com:

 There is also this plugin, which automates the process based on field
 validators: http://dev.s-cubism.com/plugin_notemptymarker

 Anthony


 On Wednesday, July 9, 2014 5:12:57 PM UTC-4, Anthony wrote:

 You can do something like this in your models:

 required = SPAN('* required', _class='required')

 db.define_table('mytable', Field('myfield', comment=required))

 Use CSS to style the comment (e.g., make the text red).

 Anthony

 On Wednesday, July 9, 2014 4:08:00 PM UTC-4, Fabiano Almeida wrote:

 Hi @all!

 I am using SQLFORM.grid extensively in my application. How to visually
 mark the required fields on the form when the user adds record?

 Thanks in advance,

 Fabiano.

  --
 Resources:
 - http://web2py.com
 - http://web2py.com/book (Documentation)
 - http://github.com/web2py/web2py (Source code)
 - https://code.google.com/p/web2py/issues/list (Report Issues)
 ---
 You received this message because you are subscribed to the Google Groups
 web2py-users group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to web2py+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/d/optout.


-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [web2py] query with multiple values

2014-07-09 Thread Vinicius Assef
My fault. I meant belongs, as Leonel wrote.

On Wed, Jul 9, 2014 at 1:16 PM, Fabiano Almeida fabi...@techno7.com.br wrote:
 Hi Vinicius,

 I tested it contains, but it did not work with integer field.

 Thanks,

 Fabiano.


 2014-07-09 12:55 GMT-03:00 Vinicius Assef vinicius...@gmail.com:

 Use contains [1].

 [1]
 http://web2py.com/books/default/chapter/29/06/the-database-abstraction-layer#like--regexp--startswith--endswith--contains--upper--lower

 On Wed, Jul 9, 2014 at 12:47 PM, Fabiano Almeida fabi...@techno7.com.br
 wrote:
  Hi,
 
  How to make a query with multiple values to field?
 
 
  q = db(db.auth_membership.group_id in [2,3,4]).select()
 
  thanks,
 
  Fabiano.
 
  --
  Resources:
  - http://web2py.com
  - http://web2py.com/book (Documentation)
  - http://github.com/web2py/web2py (Source code)
  - https://code.google.com/p/web2py/issues/list (Report Issues)
  ---
  You received this message because you are subscribed to the Google
  Groups
  web2py-users group.
  To unsubscribe from this group and stop receiving emails from it, send
  an
  email to web2py+unsubscr...@googlegroups.com.
  For more options, visit https://groups.google.com/d/optout.

 --
 Resources:
 - http://web2py.com
 - http://web2py.com/book (Documentation)
 - http://github.com/web2py/web2py (Source code)
 - https://code.google.com/p/web2py/issues/list (Report Issues)
 ---
 You received this message because you are subscribed to the Google Groups
 web2py-users group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to web2py+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/d/optout.


 --
 Resources:
 - http://web2py.com
 - http://web2py.com/book (Documentation)
 - http://github.com/web2py/web2py (Source code)
 - https://code.google.com/p/web2py/issues/list (Report Issues)
 ---
 You received this message because you are subscribed to the Google Groups
 web2py-users group.
 To unsubscribe from this group and stop receiving emails from it, send an
 email to web2py+unsubscr...@googlegroups.com.
 For more options, visit https://groups.google.com/d/optout.

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: DAL Bug?

2014-07-09 Thread lyn2py
I ran into something similar. If you use versioning, you need to create 
your own function to delete the item, which is in fact, to just disable 
the entry and then filter all searches by excluding the deleted entries, 
otherwise it would break your foreign key links to the other (versioning) 
databases.

On Wednesday, July 9, 2014 11:16:10 PM UTC+8, Leonel Câmara wrote:

 Humm wait a minute, could this be because I enabled versioning and nothing 
 is in fact deleted?


-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] random lambda error

2014-07-09 Thread Júlia Rizza
Hello,

I have an app runing in production on Apache and sometimes when navigating 
over it I receive a ticket with a lambda error. It happens ramdomly in a 
way that I wasn't able to predict what was causing it: already ocurred in a 
function called dashboard, in another called invite and some others. But 
the fact is that I do not call lambda in none of them. I only use lambda 
two times:

*models/validators.py*
db.board.slug.compute = lambda row: IS_SLUG()(row.title)[0]

*controllers/painel.py | function: board()*
try:
int(request.args(1))
user = db(db.auth_user.username == request.args(0)).select().first()
board = db((db.board.created_by == user.id)(db.board.id == 
request.args(1))).select().first()
except ValueError:
user = db(db.auth_user.username == request.args(0)).select().first()
board = db((db.board.created_by == user.id)(db.board.slug == 
request.args(1))).select().first()
except TypeError:
raise HTTP(404, T('No board specified!'))

text_type = db(db.text_type.board == board.id).select()
url_type = db(db.url_type.board == board.id).select()
image_type = db(db.image_type.board == board.id).select()
video_type = db(db.video_type.board == board.id).select()

merged_records = itertools.chain(text_type, url_type, image_type, 
video_type)
contents = sorted(merged_records, key=lambda record: 
record['topic_position'])

The ticket *traceback* is:
type 'exceptions.TypeError' lambda() takes no arguments (1 given)

1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.

Traceback (most recent call last):
  File /home/www-data/web2py/gluon/restricted.py, line 217, in restricted
exec ccode in environment
  File /home/www-data/web2py/applications/cachola/controllers/painel.py 
https://cacho.la/admin/default/edit/cachola/controllers/painel.py, line 519, 
in module
  File /home/www-data/web2py/gluon/globals.py, line 372, in lambda
self._caller = lambda f: f()
  File /home/www-data/web2py/gluon/tools.py, line 3229, in f
'?_next=' + urllib.quote(next))
  File /home/www-data/web2py/gluon/tools.py, line 91, in call_or_redirect
redirect(f(*args))
TypeError: lambda() takes no arguments (1 given)


Can somebody help me to understand where is the problem?

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: random lambda error

2014-07-09 Thread Anthony
Did you change auth.settings.on_failed_authentication from its default 
value?

On Wednesday, July 9, 2014 8:11:25 PM UTC-4, Júlia Rizza wrote:

 Hello,

 I have an app runing in production on Apache and sometimes when navigating 
 over it I receive a ticket with a lambda error. It happens ramdomly in a 
 way that I wasn't able to predict what was causing it: already ocurred in a 
 function called dashboard, in another called invite and some others. But 
 the fact is that I do not call lambda in none of them. I only use lambda 
 two times:

 *models/validators.py*
 db.board.slug.compute = lambda row: IS_SLUG()(row.title)[0]

 *controllers/painel.py | function: board()*
 try:
 int(request.args(1))
 user = db(db.auth_user.username == request.args(0)).select().first()
 board = db((db.board.created_by == user.id)(db.board.id == 
 request.args(1))).select().first()
 except ValueError:
 user = db(db.auth_user.username == request.args(0)).select().first()
 board = db((db.board.created_by == user.id)(db.board.slug == 
 request.args(1))).select().first()
 except TypeError:
 raise HTTP(404, T('No board specified!'))

 text_type = db(db.text_type.board == board.id).select()
 url_type = db(db.url_type.board == board.id).select()
 image_type = db(db.image_type.board == board.id).select()
 video_type = db(db.video_type.board == board.id).select()

 merged_records = itertools.chain(text_type, url_type, image_type, 
 video_type)
 contents = sorted(merged_records, key=lambda record: 
 record['topic_position'])

 The ticket *traceback* is:
 type 'exceptions.TypeError' lambda() takes no arguments (1 given)

 1.
 2.
 3.
 4.
 5.
 6.
 7.
 8.
 9.
 10.
 11.
 12.

 Traceback (most recent call last):
   File /home/www-data/web2py/gluon/restricted.py, line 217, in restricted
 exec ccode in environment
   File /home/www-data/web2py/applications/cachola/controllers/painel.py 
 https://cacho.la/admin/default/edit/cachola/controllers/painel.py, line 
 519, in module
   File /home/www-data/web2py/gluon/globals.py, line 372, in lambda
 self._caller = lambda f: f()
   File /home/www-data/web2py/gluon/tools.py, line 3229, in f
 '?_next=' + urllib.quote(next))
   File /home/www-data/web2py/gluon/tools.py, line 91, in call_or_redirect
 redirect(f(*args))
 TypeError: lambda() takes no arguments (1 given)


 Can somebody help me to understand where is the problem?


-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: random lambda error

2014-07-09 Thread Anthony
Also, what version of web2py?

On Wednesday, July 9, 2014 8:31:19 PM UTC-4, Anthony wrote:

 Did you change auth.settings.on_failed_authentication from its default 
 value?

 On Wednesday, July 9, 2014 8:11:25 PM UTC-4, Júlia Rizza wrote:

 Hello,

 I have an app runing in production on Apache and sometimes when 
 navigating over it I receive a ticket with a lambda error. It happens 
 ramdomly in a way that I wasn't able to predict what was causing it: 
 already ocurred in a function called dashboard, in another called invite 
 and some others. But the fact is that I do not call lambda in none of them. 
 I only use lambda two times:

 *models/validators.py*
 db.board.slug.compute = lambda row: IS_SLUG()(row.title)[0]

 *controllers/painel.py | function: board()*
 try:
 int(request.args(1))
 user = db(db.auth_user.username == request.args(0)).select().first()
 board = db((db.board.created_by == user.id)(db.board.id == 
 request.args(1))).select().first()
 except ValueError:
 user = db(db.auth_user.username == request.args(0)).select().first()
 board = db((db.board.created_by == user.id)(db.board.slug == 
 request.args(1))).select().first()
 except TypeError:
 raise HTTP(404, T('No board specified!'))

 text_type = db(db.text_type.board == board.id).select()
 url_type = db(db.url_type.board == board.id).select()
 image_type = db(db.image_type.board == board.id).select()
 video_type = db(db.video_type.board == board.id).select()

 merged_records = itertools.chain(text_type, url_type, image_type, 
 video_type)
 contents = sorted(merged_records, key=lambda record: 
 record['topic_position'])

 The ticket *traceback* is:
 type 'exceptions.TypeError' lambda() takes no arguments (1 given)

 1.
 2.
 3.
 4.
 5.
 6.
 7.
 8.
 9.
 10.
 11.
 12.

 Traceback (most recent call last):
   File /home/www-data/web2py/gluon/restricted.py, line 217, in restricted
 exec ccode in environment
   File /home/www-data/web2py/applications/cachola/controllers/painel.py 
 https://cacho.la/admin/default/edit/cachola/controllers/painel.py, line 
 519, in module
   File /home/www-data/web2py/gluon/globals.py, line 372, in lambda
 self._caller = lambda f: f()
   File /home/www-data/web2py/gluon/tools.py, line 3229, in f
 '?_next=' + urllib.quote(next))
   File /home/www-data/web2py/gluon/tools.py, line 91, in call_or_redirect
 redirect(f(*args))
 TypeError: lambda() takes no arguments (1 given)


 Can somebody help me to understand where is the problem?



-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: random lambda error

2014-07-09 Thread Júlia Rizza
I've completely forgot about the on_failed_authentication, sorry.

*models/db.py*
auth.settings.on_failed_authentication = lambda: redirect(URL('painel', 
'index'))

(web2py version 2.8.2-stable)


Em quarta-feira, 9 de julho de 2014 21h31min19s UTC-3, Anthony escreveu:

 Did you change auth.settings.on_failed_authentication from its default 
 value?

 On Wednesday, July 9, 2014 8:11:25 PM UTC-4, Júlia Rizza wrote:

 Hello,

 I have an app runing in production on Apache and sometimes when 
 navigating over it I receive a ticket with a lambda error. It happens 
 ramdomly in a way that I wasn't able to predict what was causing it: 
 already ocurred in a function called dashboard, in another called invite 
 and some others. But the fact is that I do not call lambda in none of them. 
 I only use lambda two times:

 *models/validators.py*
 db.board.slug.compute = lambda row: IS_SLUG()(row.title)[0]

 *controllers/painel.py | function: board()*
 try:
 int(request.args(1))
 user = db(db.auth_user.username == request.args(0)).select().first()
 board = db((db.board.created_by == user.id)(db.board.id == 
 request.args(1))).select().first()
 except ValueError:
 user = db(db.auth_user.username == request.args(0)).select().first()
 board = db((db.board.created_by == user.id)(db.board.slug == 
 request.args(1))).select().first()
 except TypeError:
 raise HTTP(404, T('No board specified!'))

 text_type = db(db.text_type.board == board.id).select()
 url_type = db(db.url_type.board == board.id).select()
 image_type = db(db.image_type.board == board.id).select()
 video_type = db(db.video_type.board == board.id).select()

 merged_records = itertools.chain(text_type, url_type, image_type, 
 video_type)
 contents = sorted(merged_records, key=lambda record: 
 record['topic_position'])

 The ticket *traceback* is:
 type 'exceptions.TypeError' lambda() takes no arguments (1 given)

 1.
 2.
 3.
 4.
 5.
 6.
 7.
 8.
 9.
 10.
 11.
 12.

 Traceback (most recent call last):
   File /home/www-data/web2py/gluon/restricted.py, line 217, in restricted
 exec ccode in environment
   File /home/www-data/web2py/applications/cachola/controllers/painel.py 
 https://cacho.la/admin/default/edit/cachola/controllers/painel.py, line 
 519, in module
   File /home/www-data/web2py/gluon/globals.py, line 372, in lambda
 self._caller = lambda f: f()
   File /home/www-data/web2py/gluon/tools.py, line 3229, in f
 '?_next=' + urllib.quote(next))
   File /home/www-data/web2py/gluon/tools.py, line 91, in call_or_redirect
 redirect(f(*args))
 TypeError: lambda() takes no arguments (1 given)


 Can somebody help me to understand where is the problem?



-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: random lambda error

2014-07-09 Thread Anthony
If you just want to specify a URL for redirect, you can do so without the 
lambda:

auth.settings.on_failed_authentication = URL('painel', 'index')

However, if you do define a lambda (or any callable), it should accept an 
argument.

Anthony

On Wednesday, July 9, 2014 9:31:17 PM UTC-4, Júlia Rizza wrote:

 I've completely forgot about the on_failed_authentication, sorry.

 *models/db.py*
 auth.settings.on_failed_authentication = lambda: redirect(URL('painel', 
 'index'))

 (web2py version 2.8.2-stable)


 Em quarta-feira, 9 de julho de 2014 21h31min19s UTC-3, Anthony escreveu:

 Did you change auth.settings.on_failed_authentication from its default 
 value?

 On Wednesday, July 9, 2014 8:11:25 PM UTC-4, Júlia Rizza wrote:

 Hello,

 I have an app runing in production on Apache and sometimes when 
 navigating over it I receive a ticket with a lambda error. It happens 
 ramdomly in a way that I wasn't able to predict what was causing it: 
 already ocurred in a function called dashboard, in another called invite 
 and some others. But the fact is that I do not call lambda in none of them. 
 I only use lambda two times:

 *models/validators.py*
 db.board.slug.compute = lambda row: IS_SLUG()(row.title)[0]

 *controllers/painel.py | function: board()*
 try:
 int(request.args(1))
 user = db(db.auth_user.username == request.args(0)).select().first()
 board = db((db.board.created_by == user.id)(db.board.id == 
 request.args(1))).select().first()
 except ValueError:
 user = db(db.auth_user.username == request.args(0)).select().first()
 board = db((db.board.created_by == user.id)(db.board.slug == 
 request.args(1))).select().first()
 except TypeError:
 raise HTTP(404, T('No board specified!'))

 text_type = db(db.text_type.board == board.id).select()
 url_type = db(db.url_type.board == board.id).select()
 image_type = db(db.image_type.board == board.id).select()
 video_type = db(db.video_type.board == board.id).select()

 merged_records = itertools.chain(text_type, url_type, image_type, 
 video_type)
 contents = sorted(merged_records, key=lambda record: 
 record['topic_position'])

 The ticket *traceback* is:
 type 'exceptions.TypeError' lambda() takes no arguments (1 given)

 1.
 2.
 3.
 4.
 5.
 6.
 7.
 8.
 9.
 10.
 11.
 12.

 Traceback (most recent call last):
   File /home/www-data/web2py/gluon/restricted.py, line 217, in restricted
 exec ccode in environment
   File /home/www-data/web2py/applications/cachola/controllers/painel.py 
 https://cacho.la/admin/default/edit/cachola/controllers/painel.py, line 
 519, in module
   File /home/www-data/web2py/gluon/globals.py, line 372, in lambda
 self._caller = lambda f: f()
   File /home/www-data/web2py/gluon/tools.py, line 3229, in f
 '?_next=' + urllib.quote(next))
   File /home/www-data/web2py/gluon/tools.py, line 91, in call_or_redirect
 redirect(f(*args))
 TypeError: lambda() takes no arguments (1 given)


 Can somebody help me to understand where is the problem?



-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


[web2py] Re: Before update and After update callbacks are giving the same results on updating table

2014-07-09 Thread Sarbjit
Thanks Anthony :)




-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
web2py-users group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.