[web2py] Re: web3py

2016-01-15 Thread Rod Watkins
Hello everyone,

I've been writing web apps with web2py for about 4-5 years and I've watched 
the dev forum attentively, but have never spoken up before. But on the 
future of web2py, I have formed a few opinions.

I agree that options 2 is best. I especially like the idea of  writing a 
set of guides to help coders transition from web2py to web3py, especially 
in cases of breaking changes. For example, if FORM will replace SQLFORM, a 
breaking change, a guide explaining how to rewrite SQLFORM based code to 
FORM based code would be welcomed by many I would guess. I certainly would 
appreciate that. In fact, I'd be willing to help write such a guide. 

But... I don't want web3py to slavishly pursue backwards compatibility 
purely for its own sake. Here's what I mean. The decision, if its made, to 
adopt FORM in web3py is a good example. I agree that the SQLFORM is 
irremediably flawed--I've struggled with creating a custom theme, for 
example, and it was just harder than it should be. Any proper refactoring 
would, I think, be so drastic as to make starting from scratch a better 
option. So this change is motivated by fixing weaknesses in existing code. 
But that is not the only reason a breaking change may be introduced. 
Sometimes, perfectly good existing code has to be abandoned because it 
cannot be made to function alongside newer code that is more important to 
the future of the framework. I'd like to see web3py (web4py, ..., web*n*py) 
adopt new technologies that may break backwards compatibility when those 
are important enough. For example, websockets are very likely going to 
become a big thing. I understand that websockets in web2py are supported 
(by running a tornado server), but as websocket implementations mature, it 
may force breaking changes on the framework if they are to be 
well-supported. I wouldn't want a desire to maintain backwards 
compatibility prevent web*3*py from being the best framework it can. And I 
say this as someone who has a major investment in web2py. Quite simply, I 
can deal with a breaking change (especially if there is a guide to help 
explain how to rewrite my code) if it means I get a better framework. 

Thanks to you all for your fantastic work.
Rod Watkins


On Wednesday, 13 January 2016 21:35:36 UTC-8, Massimo Di Pierro wrote:
>
> It is another experiment.
>
> It is a rewrite of some of the web2py modules and supports 90% of the 
> current web2py syntax at 2.5x the speed. It works. It it cleaner and should 
> be easier to port to python 3 than current web2py. 
>
> We are debating on web2py developers what to do:
> 1) backport some of the new modules to web2py (specifically the new Form 
> class instead of SQLFORM)
> 2) try to reach a 99.9% compatibility and release it as new major version 
> with guidelines for porting legacy apps
> 3) make some drastic changes in backward compatibility and release as a 
> different framework (but change what? we like web2py as it is)
>
> For now I am working on 2 to see how far I can push the backward 
> compatibility. But there are some functionalities I want remove or move in 
> an optional module (from legacy_web2py import *).
>
> Feel free to share your opinion on web2py developers.
>
> Massimo
>
>
> On Wed, Jan 13, 2016 at 11:04 PM, kelson _  > wrote:
>
>> I was looking at your recent web3py commits and hoped you could provide 
>> the web3py vision/intent (or point me towards it if I missed the 
>> discussion).
>>
>> Thanks,
>> kelson
>>
>
>

-- 
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: Ractive and Single Page Apps

2015-10-22 Thread Rod Watkins
This looks cool. I had not found this. I plan to study it today.
Rod

On Thursday, October 22, 2015 at 3:17:00 AM UTC-7, mcm wrote:
>
> This ractive extension could be of interest to you IMHO:
>
> http://ractive-require.codecorico.com/
>
> 2015-10-22 10:11 GMT+02:00 p a >:
>
>> Two more comments:
>>
>> - I don't intend to push all logic to the server, but only the "view" 
>> part in web2py. My long term goal is to have a working API, and many 
>> ractive components that can be combined in different ways, and allow to 
>> show data and/or interact with it independently. Then a person joining the 
>> team will have an easier job if she wants to work only on the front, in 
>> javascript, or only on the server, in python. The work I'm doing right now 
>> is also trying to fix all the routes that did not work well in json, for 
>> one reason or another. Maybe it will open new chances for interoperability 
>> with other software. Before I started to do this transformation, returning 
>> a dict with only raw data from every controller was only a question of 
>> discipline/aestetics, but now it's for real.
>>
>> - There's another issue that you may run into, Rod, and it's 
>> redirections. The solution is bytesize, if you can find it. My solution was 
>> to modify web2py.js, from:
>>
>> var redirect = xhr.getResponseHeader('web2py-redirect-location');
>>
>> if(redirect !== null) {
>>   window.location = redirect;
>>
>>
>> to:
>>
>> var redirect = xhr.getResponseHeader('web2py-redirect-location');
>>
>> if(redirect !== null) {
>>   YourRouter.navTo(redirect);
>>
>>
>> and use client_side=True on web2py so that it returns a 200 code instead 
>> of a 303 code. That way redirections work fine with page.js. Maybe in 
>> crossroads.js you can find other solutions, page.js seems simpler to use 
>> but more constrained.
>>
>> -- 
>> 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 .
>> 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: Ractive and Single Page Apps

2015-10-22 Thread Rod Watkins
The redirection trick is good to know. Little gotchas like that can drive 
you nuts.  I'll put this in my vault for later when I try to learn how to 
use ractive for my app.

On Thursday, October 22, 2015 at 1:11:13 AM UTC-7, p a wrote:
>
> Two more comments:
>
> - I don't intend to push all logic to the server, but only the "view" part 
> in web2py. My long term goal is to have a working API, and many ractive 
> components that can be combined in different ways, and allow to show data 
> and/or interact with it independently. Then a person joining the team will 
> have an easier job if she wants to work only on the front, in javascript, 
> or only on the server, in python. The work I'm doing right now is also 
> trying to fix all the routes that did not work well in json, for one reason 
> or another. Maybe it will open new chances for interoperability with other 
> software. Before I started to do this transformation, returning a dict with 
> only raw data from every controller was only a question of 
> discipline/aestetics, but now it's for real.
>
> - There's another issue that you may run into, Rod, and it's redirections. 
> The solution is bytesize, if you can find it. My solution was to modify 
> web2py.js, from:
>
> var redirect = xhr.getResponseHeader('web2py-redirect-location');
>
> if(redirect !== null) {
>   window.location = redirect;
>
>
> to:
>
> var redirect = xhr.getResponseHeader('web2py-redirect-location');
>
> if(redirect !== null) {
>   YourRouter.navTo(redirect);
>
>
> and use client_side=True on web2py so that it returns a 200 code instead 
> of a 303 code. That way redirections work fine with page.js. Maybe in 
> crossroads.js you can find other solutions, page.js seems simpler to use 
> but more constrained.
>

-- 
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: Ractive and Single Page Apps

2015-10-20 Thread Rod Watkins
Hi p a,

What you have described is basically where I am at. I have a large 
multi-page app. My plan is to start as you did and "component-ize" it and 
convert the bulk of the views to components I can then load with ajax. To 
convert it to a full-fledged SPA, I'd then start using ractive to move the 
view logic to the client side. I guess at this point, I'm trying to decide 
if going that further step is really worth it. (Besides the value of 
learning how to do it. That's always something I can do in another 
project). Ember, angular and backbone all seems to be overkill and involve 
a steep learning curve.  That's why I was attracted to ractive--it's easy 
to learn. But even then, I am not sure how much is gained. As Niphold likes 
to point out, if it is about efficiency, the bottlneck in my app is db 
access and not generation of the views--that won't change no matter how 
much the view logic is pushed client side.

So let me ask, was the conversion to a client side SPA worth it? Also, can 
I use just ractive and let web2py do the routing and some of the templating 
(I guess that sort of how Massimo did it in the estore project)? 

Thanks for the help!!

Rod

P.S. Thanks Niphold, crossroads.js looks simple enough. If I go the whole 
SPA route, I'll likely either use that or pages.js.



On Tuesday, October 20, 2015 at 2:44:26 PM UTC-7, p a wrote:
>
> A few months ago I decided to turn my existing, rather big and complex 
> multi-page web2py app into a single page app. The plan is to load all the 
> existing pages using web2py_component into the div#main_region, so that I 
> get a working application as soon as possible, but then start to move view 
> logic to the client, eventually calling web2py only for json data, and 
> building the client pages using some kind of library of framework.
>
> I was already using jquery and bootstrap a lot (plus handsontable, 
> ckeditor, jqplot...), so I had to use a library/framework compatible with 
> that, and I didn't even consider angular and ember, since they seem to have 
> their own way for doing everything.
>
> I did consider backbone+marionette, but I felt I was back to the Java 
> days, writing a lot of code and getting nothing in return. I also felt like 
> I had to duplicate work that was already done in web2py. Ractive definitely 
> seems a better match fo web2py+jquery, to my limited experience, if you 
> find a good way to organize your code.
>
> I found the following tutorial extremely helpful (it has 6 parts, I 
> recommend you read at least the first 4 parts):
>
> http://paquitosoftware.com/ractive-js-tutorial-setting-up-your-environment/
>
> It shows how to use ractive, webpack, page.js for routing, and proposes a 
> nice folder structure for your code. It also shows you how to take 
> advantage of webpack to compile ES6 into javascript real time, and you 
> could use a similar trick for coffescript or something you like better than 
> plain old javascript.
>

-- 
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] Ractive and Single Page Apps

2015-10-19 Thread Rod Watkins
Hello everyone,

I am hoping some of you who have already been using ractive.js may be able 
to help me. I'd like to create a single page app. The usual frameworks for 
doing so, from what I've read, are angular, backbone (+ marionette) and 
ember. I've studied angular and ember and each seems to be doing way more 
than I want it to. Let me explain. I hate javascript. I think its an ugly, 
nigh unreadable language. Python by contrast... oh the beauty. So I would 
rather not use a js framework that takes over functions I rather have 
web2py perform. That's why I am attracted to ractive. I understand the 
value of two-way data-binding and client side views. And that's ractive's 
game and no more. Besides, its dead simple to use--not at all like angular 
or ember, as far as I can see.

But that leaves me with a question. Angular/ember/backbone have routing 
systems. Ractive does not. So how do you handle routing for a single page 
app from web2py. How have others implemented this with ractive? I am very 
new to the single page app paradigm and it just isn't clicking for me. By 
the way, I have tried to study the w3 example from Massimo, but it's not 
been a lot of help. I think I just need a bit of a walk through. Maybe this 
could be the start of a new section for the web2py book??

Cheers
Rod

-- 
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: Shceduler mesaging

2015-10-11 Thread Rod Watkins
Sure thing. I am writing an OPDS client app and ebook manager. It's 
designed to query public domain OPDS book catalogs 
(e.g., http://www.feedbooks.com/catalog) and to help manage an ebook 
collection. I have, for example, a feature that allows one to rename and 
reorganize a book collection on disk. It is a long running process with a 
larger book collection, so I am using the scheduler to run the task. Once 
the task is completed, I want to display a flash notification in the UI 
notifying the user that it is complete. Mind you, there are other 
background tasks as well (some on a regular schedule) that will also be 
running at times that I also would like to have UI notifications for.

>From my understanding, one can use the database or the file system to 
communicate the message to the UI. Or one could use websockets. I had 
thought the easiest way would be to have a small table in a possiibly 
separate database to store the message. The UI could then occasionally poll 
the server for new messages, display it as a flash message and delete it 
from the database. But since I will be using sqlite as the database, I was 
concerned about concurrency since I would have two different processes 
possible accessing the database at the same time.

So I was looking for some advice on how best to proceed. 

Thanks
Rod

On Sunday, October 11, 2015 at 9:50:02 AM UTC-7, Massimo Di Pierro wrote:
>
> Can you tell us more about the use case?
>
> On Friday, 9 October 2015 22:51:04 UTC-5, Rod Watkins wrote:
>>
>> Hi everyone,
>>
>> I have a question about the scheduler and communicating between the 
>> scheduler process and my web app. In another post here, Niphlod suggested 
>> using the database or the file system to communicate between the scheduler 
>> and my app--for example, to communicate some content to display in a flash 
>> message. I will be using sqlite as my database. What are the concurrency 
>> problems I may be facing sharing the message through sqlite? Would using 
>> the file system be better? Or, should I consider a more sophisticated 
>> messaging system like that in websocket_messaging in the contrib folder. Or 
>> is there some other better way?
>>
>> Thanks
>> Rod
>>
>

-- 
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] Shceduler mesaging

2015-10-09 Thread Rod Watkins
Hi everyone,

I have a question about the scheduler and communicating between the 
scheduler process and my web app. In another post here, Niphlod suggested 
using the database or the file system to communicate between the scheduler 
and my app--for example, to communicate some content to display in a flash 
message. I will be using sqlite as my database. What are the concurrency 
problems I may be facing sharing the message through sqlite? Would using 
the file system be better? Or, should I consider a more sophisticated 
messaging system like that in websocket_messaging in the contrib folder. Or 
is there some other better way?

Thanks
Rod

-- 
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] Application Update

2015-09-29 Thread Rod Watkins
I'd like to add the ability to update my application from within the app 
(similar to how web2py can update itself through the admin interface). Has 
anyone tried to do this? Just curious and looking for some suggestions.

Thanks y'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.


Re: [web2py] Re: in model or controller?

2015-04-15 Thread Rod Watkins
Thanks Niphlod. That was very useful, especially the toolbar trick. I was 
not aware of that. Many thanks!
Rod

On Wednesday, April 15, 2015 at 3:26:36 PM UTC-7, Niphlod wrote:
>
> in order:
>
> @alex: same thing. if you can stuff everything inside the define_table() 
> call you'll be sure to have everything working in the speediest way with 
> lazy_tables.
>
> @richard: if you put a requires in the controller, the second that line is 
> executed, the table is unlazyed. The whole point of the thread should 
> obviously "fenced" into the scenario *what can I do to speedup model 
> execution, since the controller function is executed anyway*.
>
> @rod: same thing.
>
>  for everybody: tables stay lazy until someone does db.tablename. 
> Pythonicly-speaking, the getattr(tablename) on "db" triggers the 
> unlazyification. 
>
>  for evertbody, part two. the toolbar (response.toolbar()) has a 
> nice section that lists lazy and non-lazy tables. Checking if your models 
> are "in order" just takes three simple steps:
> - create a fresh controller, i.e. controllers/testlazy.py
> - create a test function in that controller, i.e. 
> def does_nothing():
> return dict()
> - hit appname/testlazy/does_nothing: by default the generic view shows the 
> toolbar. If you have all the tables listed as lazy you did a goo job. If 
> not, inspect your app to find any db.tablename call.
>

-- 
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: in model or controller?

2015-04-15 Thread Rod Watkins
I have this question as well. And, also, what bout custom widgets assigned 
after the table definition? Does that trigger the unlazification as well?
TIA

On Wednesday, April 15, 2015 at 3:05:23 PM UTC-7, Alex Glaros wrote:
>
> regarding validator "better placed in the table definition itself"
>
> what about the "represents" and "readable/writable" statements?  Is there 
> efficiency in moving those to the table definition?
>
> Alex
>
>
>

-- 
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] sessions in redis logout error

2015-03-21 Thread Rod Watkins
Hi all,

Has anyone run into this problem? If you use Redis to store sessions, when 
logging out, the following error is thrown. I'm looking into i8t myself, 
but thought others may have run into it as well.
Thanks
Rod

 'MockQuery' object has no attribute 
'delete'
Versionweb2py™Version 2.9.12-stable+timestamp.2015.02.13.23.31.09Traceback

1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.

Traceback (most recent call last):
  File "C:\projects\unity\web2py\gluon\restricted.py", line 226, in restricted
exec ccode in environment
  File "C:/projects/unity/web2py/applications/unity_gm/controllers/user.py" 
, line 223, in 

  File "C:\projects\unity\web2py\gluon\globals.py", line 393, in 
self._caller = lambda f: f()
  File "C:\projects\unity\web2py\gluon\tools.py", line 3458, in f
return action(*a, **b)
  File "C:/projects/unity/web2py/applications/unity_gm/controllers/user.py" 
, line 114, in logout
form = auth.logout()
  File "C:\projects\unity\web2py\gluon\tools.py", line 2671, in logout
current.session.renew(clear_session=not self.settings.keep_session_onlogout)
  File "C:\projects\unity\web2py\gluon\globals.py", line 953, in renew
self.clear()
  File "C:\projects\unity\web2py\gluon\globals.py", line 1069, in clear
table._db(table.id == record_id).delete()
AttributeError: 'MockQuery' object has no attribute 'delete'

-- 
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 cache key name

2015-03-20 Thread Rod Watkins
Wow, that was fast!! I will test it out right away.
Thanks!!

Rod

On Friday, March 20, 2015 at 9:53:20 AM UTC-7, Massimo Di Pierro wrote:
>
> OK in pydal now:
>
> select(, cache=dict(model=cache.ram, expiration=10, key='mykey'))
>
> lease give it a try.
>
> On Friday, 20 March 2015 11:15:39 UTC-5, Rod Watkins wrote:
>>
>> Hi all,
>>
>> Would it be possible to alter the DAL code for caching to allow the cache 
>> key name to be passed as part of the call for selects? I ask because it 
>> would make it much easier to invalidate cache entries in a finer grained 
>> way,
>>
>> Thanks
>> Rod
>>
>

-- 
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] Dal cache key name

2015-03-20 Thread Rod Watkins
Hi all,

Would it be possible to alter the DAL code for caching to allow the cache 
key name to be passed as part of the call for selects? I ask because it 
would make it much easier to invalidate cache entries in a finer grained 
way,

Thanks
Rod

-- 
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: nssm and web2py as a windows service

2015-03-04 Thread Rod Watkins
Thanks Niphlod. i had a silly typo i kept missing. Got it working great. 
rod

On Tuesday, March 3, 2015 at 3:46:50 PM UTC-8, Tim Richardson wrote:
>
>
>
> On Wednesday, March 4, 2015 at 6:43:03 AM UTC+11, Niphlod wrote:
>>
>> nssm isn't rocket science, from the web2py perspective.
>> The point usually is being able to run web2py passing arguments as you 
>> need them ? 
>> If you can do it by cmdline, nssm isn't an issue: just use the same 
>> commandline
>>
>> web2py.py -a "" --interfaces 
>> "0.0.0.0:80;0.0.0.0:443:path_to_key:path_to_cert"
>>
>> should suffice for most cases.
>>
>>
> ... so first let us know if you have a working command line version of 
> what you want to do. 
>
> nssm is easy after that. 
>
>

-- 
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] nssm and web2py as a windows service

2015-03-03 Thread Rod Watkins
Hi everyone,

Could someone share with me their nssm configuration to run web2py on port 
80 and port 443 with ssl on windows?

I've tried to follow the book as well as researching here for fixes, but 
have had no luck. Either the service fails to load or if it does, I cannot 
connect.

Thanks for your time.

Rod


-- 
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: Rocket use

2014-10-24 Thread Rod Watkins
Good. I like its simplicity.
Thanks!

On Friday, 24 October 2014 12:42:43 UTC-7, Niphlod wrote:
>
> rocket is perfectly fine.
>
> On Friday, October 24, 2014 7:29:47 PM UTC+2, Rod Watkins wrote:
>>
>> Hello all,
>>
>> I am about ready to start deploying my site. It is a private site for 
>> about 8-10 users. I was wondering if, given the small size, whether it 
>> would be safe to use the rocket web server, rather than apache or nginx?
>>
>> Thanks
>> Rod
>>
>

-- 
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] Rocket use

2014-10-24 Thread Rod Watkins
Hello all,

I am about ready to start deploying my site. It is a private site for about 
8-10 users. I was wondering if, given the small size, whether it would be 
safe to use the rocket web server, rather than apache or nginx?

Thanks
Rod

-- 
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: Learning Management System survey

2014-01-09 Thread Rod Watkins
Excellent. I was not even aware of this thread, but its potential is great.
Rod

On Thursday, January 9, 2014 6:30:25 AM UTC-8, Massimo Di Pierro wrote:
>
> I have something coming up soon.
>
> On Thursday, 9 January 2014 03:47:35 UTC-6, Jesus Alvaro wrote:
>>
>> Any news on progress?
>>
>> El sábado, 8 de enero de 2011 22:40:01 UTC+1, Anthony escribió:
>>>
>>> Looks like there's a lot of dissatisfaction with Blackboard (and Moodle):
>>>  
>>>
>>> http://www.reddit.com/r/programming/comments/eye4y/shame_on_you_blackboard/
>>>
>>

-- 
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/groups/opt_out.


Re: [web2py] URL link to external site

2013-12-04 Thread Rod Watkins
Works great! Thanks!!

Rod

On Wednesday, December 4, 2013 8:58:38 AM UTC-8, Anthony wrote:
>
> The URL() helper just generates a string, so in place of it, just put '
> http://forum.xxx.ca/MyBB'.
>
> Anthony
>
> On Wednesday, December 4, 2013 11:48:19 AM UTC-5, Rod Watkins wrote:
>>
>> But how do I create the link then? I ask because it is a link used as 
>> part of the primary menu system and it seems to only take a URL to create 
>> the link.
>>
>> Thanks again
>> Rod
>>
>>
>> On Wednesday, December 4, 2013 8:39:33 AM UTC-8, Jonathan Lundell wrote:
>>>
>>> On 4 Dec 2013, at 8:22 AM, Rod Watkins  wrote:
>>>
>>> I have a simple question that I haven't been able to find an answer to.
>>>
>>> I need to know how to use the URL helper to link to an external site. 
>>> Here is the code I am using:  URL(scheme='http', host='
>>> forum.xxx.ca/MyBB'). 
>>>
>>> But this appends the default app, controller and function to the end of 
>>> the link:http://forum.xxx.ca/MyBB/unity_gm/default/index
>>>
>>> How do I suppress the addition so it links properly?
>>>
>>>
>>> There's no reason to use URL() for external links. 
>>>
>>>

-- 
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/groups/opt_out.


Re: [web2py] URL link to external site

2013-12-04 Thread Rod Watkins
But how do I create the link then? I ask because it is a link used as part 
of the primary menu system and it seems to only take a URL to create the 
link.

Thanks again
Rod


On Wednesday, December 4, 2013 8:39:33 AM UTC-8, Jonathan Lundell wrote:
>
> On 4 Dec 2013, at 8:22 AM, Rod Watkins > 
> wrote:
>
> I have a simple question that I haven't been able to find an answer to.
>
> I need to know how to use the URL helper to link to an external site. Here 
> is the code I am using:  URL(scheme='http', host='forum.xxx.ca/MyBB'
> ). 
>
> But this appends the default app, controller and function to the end of 
> the link:http://forum.xxx.ca/MyBB/unity_gm/default/index
>
> How do I suppress the addition so it links properly?
>
>
> There's no reason to use URL() for external links. 
>
>

-- 
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/groups/opt_out.


[web2py] URL link to external site

2013-12-04 Thread Rod Watkins
Hello,

I have a simple question that I haven't been able to find an answer to.

I need to know how to use the URL helper to link to an external site. Here 
is the code I am using:  URL(scheme='http', host='forum.xxx.ca/MyBB'). 

But this appends the default app, controller and function to the end of the 
link: http://forum.xxx.ca/MyBB/unity_gm/default/index

How do I suppress the addition so it links properly?

Thanks for your help.

Rod

-- 
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/groups/opt_out.


[web2py] Re: View log file

2013-11-29 Thread Rod Watkins
Thanks. I knew I was missing something..

Cheers
Rod

On Friday, November 29, 2013 11:57:05 AM UTC-8, Niphlod wrote:
>
> save it everywhere BUT the static folder (that is the one especially made 
> for PUBLIC access) and serve it with response.stream
>
> On Thursday, November 28, 2013 6:33:11 PM UTC+1, Rod Watkins wrote:
>>
>> Hi All,
>>
>> I've managed to get logging to a file, call it app.log, using the logging 
>> functions. I now want to be able to display the contents of that file on a 
>> page that is secure. Currently, it loads directly through the static file 
>> process. But I cannot restrict who views it that way--a security hole if 
>> left as is. So how do I load the content of a text file into my admin page? 
>>
>> Sorry for the rudimentary question. And thanks in advance.
>>
>> Rod Watkins
>>
>

-- 
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/groups/opt_out.


[web2py] View log file

2013-11-29 Thread Rod Watkins
Hi All,

I've managed to get logging to a file, call it app.log, using the logging 
functions. I now want to be able to display the contents of that file on a 
page that is secure. Currently, it loads directly through the static file 
process. But I cannot restrict who views it that way--a security hole if 
left as is. So how do I load the content of a text file into my admin page? 

Sorry for the rudimentary question. And thanks in advance.

Rod Watkins

-- 
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/groups/opt_out.


[web2py] DAL error

2013-10-10 Thread Rod Watkins
My log shows the following error--I believe it may due to psycopg2.

Traceback (most recent call last):
  File "C:\projects\web2py\gluon\dal.py", line 7538, in __init__
self._adapter = ADAPTERS[self._dbname](**kwargs)
  File "C:\projects\web2py\gluon\dal.py", line 2713, in __init__
if do_connect: self.reconnect()
  File "C:\projects\web2py\gluon\dal.py", line 606, in reconnect
self.connection = f()
  File "C:\projects\web2py\gluon\dal.py", line 2711, in connector
return self.driver.connect(msg,**driver_args)
  File "C:\Python27\lib\site-packages\psycopg2\__init__.py", line 164, in 
connect
conn = _connect(dsn, connection_factory=connection_factory, async=async)
InterfaceError: only protocol 3 supported

What is protocol 3?

TIA

Rod

-- 
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/groups/opt_out.


[web2py] Re: A better way to do this?

2012-11-29 Thread Rod Watkins
See, I knew there had to be something better. It just felt wrong, but I've 
only been learning python for a few months.

Thanks so much. That's so much more elegant.

On Wednesday, November 28, 2012 11:05:22 AM UTC-8, Massimo Di Pierro wrote:
>
> tags = ', '.join(t.name for t in db().select(db.tag.name,distinct=True))
>
> On Tuesday, 27 November 2012 11:48:00 UTC-6, Rod Watkins wrote:
>>
>> I need to create a comma separated list of tags from the rows returned 
>> from a tags table.
>>
>> This is how I am doing it now, but it seems wasteful. There must be a 
>> better way.
>>
>> tag_db = db(db.tag.id>0).select(db.tag.name)
>> tag_list = []
>> for t in tag_db:
>> tag_list.append(t.name)
>> tags = ", ".join(tag_list)
>>
>> Thanks
>> Rod
>>
>>

-- 





[web2py] A better way to do this?

2012-11-28 Thread Rod Watkins
I need to create a comma separated list of tags from the rows returned from 
a tags table.

This is how I am doing it now, but it seems wasteful. There must be a 
better way.

tag_db = db(db.tag.id>0).select(db.tag.name)
tag_list = []
for t in tag_db:
tag_list.append(t.name)
tags = ", ".join(tag_list)

Thanks
Rod

-- 





[web2py] Bootstrap departures from standard framework

2012-11-17 Thread Rod Watkins
Hello everyone,

I am in the process of preparing my web app to switch over to bootstrap. I 
wanted to get a better understanding of how the web2py implementation 
departs in any way from the standard vanilla bootstrap library.

I already understand that the welcome scaffold app makes use of some unique 
js to make the menu act differently than the standard bootstrap navbar 
(mouse over rather than clicking). But I also noticed that the web2py 
scaffold app does not rely on the viewport size (media queries) to switch 
over to the mobile style menu--relying instead on the user agent as 
reported by web2py. Other than those two, do all the other standard 
bootstrap features just work out of the box, so to speak? 

A related question: if one wished to forgo the web2py departures 
(especially with regard to the responsive part of bootstrap) to have a 
plain vanilla bootstrap experience, are there any gotchas I should expect 
when using, for example, the formstyle='bootstrap' setting for forms?

I'd like to get other's experiences before I begin the transition.

Thanks everyone!!

Rod

-- 





[web2py] Timezone

2012-09-12 Thread Rod Watkins
I have a question about timezones. What is the best way to handle datetimes 
entered by users. Since they will enter a datetime in their local timezone, 
what is the best way to transform that to a UTC datetime value before 
inserting it into the database?

Thanks
Rod

-- 





[web2py] VPS Hosting in Canada

2012-06-26 Thread Rod Watkins
Hello everyone,

I will soon be needing a hosting provider, preferably a vps hosting 
service, with servers based in Canada (for privacy and legal reasons). I 
know that there are posts on hosting services, but I wanted to get feedback 
from anyone who has experience with one's based in or with servers 
physically within Canada. I like the idea of a vps server rather than 
shared hosting since it avoids several complications. So if I could get any 
recommendations or warning about who to avoid, I would really appreciate 
your input.

Thanks

Rod Watkins

-- 





[web2py] Re: Filter select options

2012-06-01 Thread Rod Watkins
Thanks Anthony, that's good to know.

On Wednesday, 30 May 2012 19:55:09 UTC-7, Anthony wrote:
>
> Note, the default IS_IN_DB validator for a reference field also sets the 
> label argument of the validator to be the _format attribute of the 
> referenced table (so the select will show a more descriptive field or set 
> of fields from the referenced table rather than just the record number). If 
> you're overriding the default validator, you'll need to explicitly specify 
> the label argument as well. Assuming the reference is to the auth_user 
> table, something like:
>
> db.table.field.requires = IS_IN_DB(db(query), 'auth_user.id', 
> db.auth_user._format)
>
> If you don't like the default auth_user format, you can specify a custom 
> format (e.g., '%(last_name)s, %(first_name)s').
>
> Anthony
>
> On Wednesday, May 30, 2012 6:41:58 PM UTC-4, Rod Watkins wrote:
>>
>> RTM, eh. I didn't think to look at the IS_IN_DB validator for this. In 
>> fact, I didn't even have one as I was relying on the default. Thanks!!
>>
>> On Wednesday, 30 May 2012 13:55:35 UTC-7, Niphlod wrote:
>>>
>>> IS_IN_DB takes also a queryset .
>>> Directly from http://web2py.com/books/default/chapter/29/7
>>>
>>> query = (db.table.field == 'xyz') #in practice 'xyz' would be a variable
>>> db.table.field.requires=IS_IN_DB(db(query),)
>>>
>>>
>>> put that before calling SQLFORM and voilà.
>>>
>>>
>>> Il giorno mercoledì 30 maggio 2012 22:47:33 UTC+2, Rod Watkins ha 
>>> scritto:
>>>>
>>>> Hello everyone,
>>>>
>>>> I have a quick question.
>>>>
>>>> I am using the SQLFORM tool and creating a form using the generated 
>>>> custom widgets. One part of the form allows a one to choose a user from a 
>>>> select list (the table has a reference to auth_user). I'd like to limit 
>>>> the 
>>>> options shown in the select list to only those users who are a member  of 
>>>> a 
>>>> specific group. Is there a way to apply a filter to restrict the users 
>>>> added to the select widget?? 
>>>>
>>>> Rod
>>>>
>>>

[web2py] Re: Filter select options

2012-05-30 Thread Rod Watkins
RTM, eh. I didn't think to look at the IS_IN_DB validator for this. In 
fact, I didn't even have one as I was relying on the default. Thanks!!

On Wednesday, 30 May 2012 13:55:35 UTC-7, Niphlod wrote:
>
> IS_IN_DB takes also a queryset .
> Directly from http://web2py.com/books/default/chapter/29/7
>
> query = (db.table.field == 'xyz') #in practice 'xyz' would be a variable
> db.table.field.requires=IS_IN_DB(db(query),)
>
>
> put that before calling SQLFORM and voilà.
>
>
> Il giorno mercoledì 30 maggio 2012 22:47:33 UTC+2, Rod Watkins ha scritto:
>>
>> Hello everyone,
>>
>> I have a quick question.
>>
>> I am using the SQLFORM tool and creating a form using the generated 
>> custom widgets. One part of the form allows a one to choose a user from a 
>> select list (the table has a reference to auth_user). I'd like to limit the 
>> options shown in the select list to only those users who are a member  of a 
>> specific group. Is there a way to apply a filter to restrict the users 
>> added to the select widget?? 
>>
>> Rod
>>
>

[web2py] Filter select options

2012-05-30 Thread Rod Watkins
Hello everyone,

I have a quick question.

I am using the SQLFORM tool and creating a form using the generated custom 
widgets. One part of the form allows a one to choose a user from a select 
list (the table has a reference to auth_user). I'd like to limit the 
options shown in the select list to only those users who are a member  of a 
specific group. Is there a way to apply a filter to restrict the users 
added to the select widget?? 

Rod


Re: [web2py] Problem with storage object

2012-05-16 Thread Rod Watkins
Ahh, found it. I did have a function named gsettings. It was in a different 
model file and I had forgotten to delete it. Thanks for the suggestion. 
That was two hours wasted. :)

Rod

On Wednesday, 16 May 2012 12:46:26 UTC-7, rochacbruno wrote:
>
> do you have a function named "gsettings" in controller?
>
>
>
> -- 
>
> Bruno Rocha
> [http://rochacbruno.com.br]
>
>

Re: [web2py] Problem with storage object

2012-05-16 Thread Rod Watkins
No, no such function.

On Wednesday, 16 May 2012 12:46:26 UTC-7, rochacbruno wrote:
>
> do you have a function named "gsettings" in controller?
>
>
>
> -- 
>
> Bruno Rocha
> [http://rochacbruno.com.br]
>
>

[web2py] Problem with storage object

2012-05-16 Thread Rod Watkins
I have created a Storage object in a model to expose some settings gathered 
from the database.
But I am facing a problem.

When I access the object from a view, it works correctly, e.g., 
{{=gsettings.setting_name}} produces the correct text in my html.

But if I try to access that value in my controller (e.g., value = 
gsettings.setting_name) I get an error: 


'function' object has no attribute 'setting_name'

Any help would be appreciated.

Thanks
Rod



[web2py] Re: Tagging View

2012-05-11 Thread Rod Watkins
Wow, very cool. One question. In the cms app, a page (with an id) already 
exists so the ajax post to the addtag action can add the tag to the page. 
In my case the create version of the form will not have an entity with an 
id yet since it does not exist in the db. Am I wrong to think than that 
this solution won't work on the create entity page? I would need a 
pre-existing entity, yes?

Thanks
Rod


[web2py] Tagging View

2012-05-11 Thread Rod Watkins
I have a question I have not been able to answer for myself.

In the web2py cookbook, there is this suggested model for handling tags:

db.define_table('data', Field('value')) 
db.define_table('tag', Field('record_id', db.data), Field('name')) 

I like that. But I have struggled with the correct way to handle the form 
for the "data" entity. I want a create/edit form that allows the entry of 
any fields in the "data" entities table as well as tags for the entity 
(like, say, Wordpress). I am using SQLFORM to handle the form processing of 
the "data" table form elements. But how would I handle the tags input? What 
is the recommended way of creating/updating the tags?

Thanks
Rod



[web2py] Unit Testing

2012-05-06 Thread Rod Watkins
Hi everyone,

I am fairly new to web2py and python programming, but have had some rather 
wonderful success in the month or so I've been learning it.

I am now preparing to start a real project and want to have unit tests as I 
go.  I've read a bit (will be doing more) about python unit testing 
(doctests, unittest, nose, coverage, selenium), but I want to get some 
expert advise before I fully dive in, if I may. So a few questions:

1. Do you use unit tests?
2. What tools do you use (doctests, unittest, nose, coverage, selenium, 
mocker, or others)?
3. Do you use any of the test runners from the community? (
http://packages.python.org/web2py_utils/test_runner.html,http://www.web2pyslices.com/slices/take_slice/142,http://web2py.com/AlterEgo/default/show/260)
 
Which, if any, would you suggest using?

I'm mainly looking for some guidance about how to proceed, what to study 
and the best manner you've found to do unit tests.  For example, it is 
worth doing anything more than doctests in controllers? If so, what beyond 
them should I learn to use, etc.

Thanks everyone.
Rod



[web2py] Best practices question

2012-05-01 Thread Rod Watkins

Hello everyone,

I have a question regarding best practices with respect to SQLform and 
custom widgets.

My forms require custom layouts to achieve look I am after. So far, to 
accomplish this, I have used SQLform to handle the form processing 
(brilliant, by the way) and then have done my form layout mostly by hand 
and then inserting the specific widgets, e.g., {{=form.custom.widget.name}} 
and so on.

For some of these I am setting id and class names in the controller to make 
use of my own css styles and jquery plugins.

All works very well. Of course, the cost is that my forms will no longer 
work quite right with the out-of-the-box web2py layouts. Not a big concern 
for me as I have designed my own.

Recently I have been studying custom widgets and would like some feedback 
from those more experienced with web2py, if I may.

Is is better practice to code custom widgets. For example, I really like 
the anytime jquery plugin. To use it, I have overridden in the controller 
the css class name and id for the datetime fields in my forms. And then 
hooked them up to the anytime plugin with a short bit of javascript and 
custom css classes. 

But is it better to code a custom widget? I noticed in the deposit 
directory that there was an anytime plugin widget (which I have not taken 
too close a look at yet). Is it wiser to use a custom widget like that or 
just proceed as I have? Pros/cons? 

I just don't want to get too far along and discover I ought to have done 
things differently.

Thanks in advance.

Cheers
Rod

[web2py] Re: Eclipse and autocomplete

2012-04-05 Thread Rod Watkins
Yes, that gets the autocomplete. Yea!

The request, response, T and others still show up as errors, so I've just 
turned off code analysis.

On Wednesday, 4 April 2012 16:23:02 UTC-7, Anthony wrote:
>
> Does it work if you do the following at the top of model and controller 
> files (requires latest web2py version):
>
> if 0:
> from gluon import *
>
> If you've got db and auth objects, you could also add:
>
> from gluon.tools import Auth
> db = DAL()  
> auth = Auth(db)
>
> Anthony
>
> On Tuesday, April 3, 2012 10:54:06 PM UTC-4, Rod Watkins wrote:
>>
>> I know this has been asked before. I don't mean to be an annoyance. I've 
>> done the searches are read numerous posts about how to handle this. But the 
>> advice conflicts and I've yet to actually fix the problem. 
>>
>> What is the best way to handle imports for eclipse to get autocomplete to 
>> work properly (as well as rid eclipse of all the incorrect error messages?
>>
>> I rather like having autocomplete functioning since, as a beginner, it 
>> helps me discover functionality that I might otherwise miss (besides saving 
>> some typing).
>>
>> Please accept my thanks in advance for any help on this.
>>
>> Cordially,
>> Rod Watkins
>>
>

[web2py] Eclipse and autocomplete

2012-04-03 Thread Rod Watkins
I know this has been asked before. I don't mean to be an annoyance. I've 
done the searches are read numerous posts about how to handle this. But the 
advice conflicts and I've yet to actually fix the problem. 

What is the best way to handle imports for eclipse to get autocomplete to 
work properly (as well as rid eclipse of all the incorrect error messages?

I rather like having autocomplete functioning since, as a beginner, it 
helps me discover functionality that I might otherwise miss (besides saving 
some typing).

Please accept my thanks in advance for any help on this.

Cordially,
Rod Watkins