On Friday, April 10, 2015 at 1:50:24 PM UTC-7, Ron Chatterjee wrote:
>
> Does it break the backward compatibility if I have crud included in the 
> code? If not, then it shouldn't be a problem in keep using it. Right? 
>

I think you're missing the point of backwards compatibility.  In the Web2Py 
context, it is the framework's promise that pages you write today won't 
break tomorrow [1] .  As Niiphlod says above, CRUD is covered by that 
promise.  However, anything written with CRUD will be limited to what works 
right now, which is nor more than worked two years ago.  And "works" means 
"displays what the page developer thinks it should display, given the 
current list of known bugs".

 

> Whats the pros and cons of using it as oppose to not using it vs. using 
> SQLFORM instead?
>
>
I would go back and read Richard's messages a little closer.

Among the pros of using CRUD:

* it's simple
* there are working examples

Among the cons:

* Not any simpler than SQLFORM.grid, which needs the permissions decorator
* No enhancements
* The buglist isn't going to get shorter [2]

[1] Never say Never, because major vulnerabilities could cause some feature 
to be turned off, like some of the SSL modes.
[2] Never say Never, because major vulnerabilities could prompt emergency 
fixes.

It can be fun to drive a 1954 Mercury Coupe.  Don't expect it to have 
anti-lock brakes or stability control, remember that drum brakes are 
subject to heat fade, and you need to locate a source of replacement brake 
shoes.  Keep a tray in the parking spot to catch the oil leaks.  You can 
put your stereo in, but you may lose backseat space to find a place to put 
it.  Don't expect it handle like 2015 Boxster.

/dps



 

> On Friday, April 10, 2015 at 2:59:18 PM UTC-4, Richard wrote:
>>
>> From the book :
>>
>> def display_form():
>>    form = SQLFORM(db.person)
>>    if form.process().accepted:
>>        response.flash = 'form accepted'
>>    elif form.errors:
>>        response.flash = 'form has errors'
>>    else:
>>        response.flash = 'please fill out the form'
>>    return dict(form=form)
>>
>>
>> http://web2py.com/books/default/chapter/29/07/forms-and-validators#SQLFORM
>>
>> In the above you replace form = SQLFORM(db.person) by :
>>
>> form = crud.create(db.person)
>>
>> http://web2py.com/books/default/chapter/29/07/forms-and-validators#CRUD
>>
>> Notice you will have to check permissions with SQLFORM and for this you 
>> can use decorator :
>>
>>
>> http://web2py.com/books/default/chapter/29/09/access-control?search=decorator#Decorators
>>
>> :)
>>
>> Richard
>>
>> On Fri, Apr 10, 2015 at 2:53 PM, Richard Vézina <[email protected]> 
>> wrote:
>>
>>> Ok, provide me access to your web2py admin IDE and I go code for free 
>>> your app, sounds good... Maybe too good to be true... It is...
>>>
>>> There is the book for that...
>>>
>>> Richard
>>>
>>> On Fri, Apr 10, 2015 at 2:44 PM, Ron Chatterjee <[email protected]> 
>>> wrote:
>>>
>>>> Question:
>>>>
>>>> Whats the drop in replacement for:
>>>>
>>>> (1) crud.create
>>>> (2)crud.read
>>>> (3)crud.update
>>>> (4)crud.delete
>>>>
>>>> And what will be the proper syntax including parameters?
>>>>
>>>>
>>>> On Friday, April 10, 2015 at 2:35:01 PM UTC-4, Richard wrote:
>>>>>
>>>>> Also, in case of crud.create/read/update SQLFORM is just à drop in 
>>>>> replace which is trivial to refactor... crud.select is another thing 
>>>>> because SQLFORM.grid signature is very differents...
>>>>>
>>>>> Maybe creating SQLFORM.select that would behave like crud.select 
>>>>> without the authentication constraint built-in can be considering and 
>>>>> crud 
>>>>> ditched defenitly??
>>>>>
>>>>> Richard
>>>>>
>>>>> On Fri, Apr 10, 2015 at 2:16 PM, Anthony <[email protected]> wrote:
>>>>>
>>>>>> The grid would likely be refactored rather than completely deprecated 
>>>>>> in favor of a new API. Anyway, keep in mind that web2py promises 
>>>>>> backward 
>>>>>> compatibility, so nothing is going to stop working, and even for 
>>>>>> something 
>>>>>> like Crud, I think any significant bugs would be fixed (at the very 
>>>>>> least, 
>>>>>> I'm sure a pull request to fix a bug would be accepted). The reason Crud 
>>>>>> doesn't get much attention anymore is that SQLFORM.process() and 
>>>>>> SQLFORM.grid() now cover much of its functionality.
>>>>>>
>>>>>> Anthony
>>>>>>
>>>>>>
>>>>>> On Friday, April 10, 2015 at 1:59:44 PM UTC-4, Richard wrote:
>>>>>>>
>>>>>>> I just read in an thread that SQLFORM.grid become harder and harder 
>>>>>>> to maintain and that because of that it could be deprecated in the 
>>>>>>> futur... 
>>>>>>> Which sounds like, it is better to avoid using it for new stuff in your 
>>>>>>> app 
>>>>>>> since it future is uncertain.
>>>>>>>
>>>>>>> I don't think you blame any body in this thread and your question is 
>>>>>>> legitimate to me, though as anything you should know what you doing 
>>>>>>> like 
>>>>>>> you should know the law even if you don't (lol)... So I guess the same 
>>>>>>> goes 
>>>>>>> here, you should carefully base your decision of coding on proper 
>>>>>>> information and there is no other way except following the mailing-list 
>>>>>>> for 
>>>>>>> bleeding edge information, read the book, and read the code (which you 
>>>>>>> can 
>>>>>>> evaluate it quality and decide if you want ot use it or not). Open 
>>>>>>> Source 
>>>>>>> Software come as is (as many other software anyway) and you are free to 
>>>>>>> use 
>>>>>>> it!!
>>>>>>>
>>>>>>> Your suggestions worth considerations about how to improve diffusion 
>>>>>>> of API change... About that I would suggest having a section in the 
>>>>>>> changelog call API Changes which seems to me easier to implement than 
>>>>>>> your 
>>>>>>> suggestions...
>>>>>>>
>>>>>>> Idea to you to get informed :
>>>>>>>
>>>>>>> Filter the mailing-list (Massimo make announcement each time there 
>>>>>>> is something that concern users, security, backward compatibility, API 
>>>>>>> change, etc.)
>>>>>>>          Google the mailing-list (Google Group search) when you have 
>>>>>>> clue, you will easily find full of information (I have a google email 
>>>>>>> almost exclusivelly for web2py so I can just search email which avoid 
>>>>>>> me to 
>>>>>>> search the web when I don't want to or feel I can retrieve old post to 
>>>>>>> refresh my minds)
>>>>>>> Change log (for sure before upgrade)
>>>>>>> Read the book (it is updated regularly)
>>>>>>> readthedoc.org : http://web2py.readthedocs.org/en/R-2.9.11/ (STABLE 
>>>>>>> DOC FAILED!!!)
>>>>>>> Code review (at least the welcome app once in a wild, diff tools can 
>>>>>>> be really helpful to go straigh to the point - Github make it a breeze 
>>>>>>> to 
>>>>>>> navigate the code and look at the change overtime)
>>>>>>> Start Github repo so you will get issue and commit message (Code 
>>>>>>> review)
>>>>>>> Dig as far as you skill allow you when you get issue you will learn 
>>>>>>> more and more how web2py works and how it is coded
>>>>>>>
>>>>>>>
>>>>>>> Richard
>>>>>>>
>>>>>>>
>>>>>>> On Fri, Apr 10, 2015 at 1:15 PM, Ian W. Scott <[email protected]> 
>>>>>>> wrote:
>>>>>>>
>>>>>>>> Thanks for the clarification, Richard. Just for clarification, 
>>>>>>>> you're saying that SQLFORM.grid will likely be deprecated as well? (I 
>>>>>>>> wasn't quite sure what "which" refers to in "which is considered the 
>>>>>>>> next 
>>>>>>>> crud")
>>>>>>>>
>>>>>>>> Sasogeek and I seem to have touched a nerve with the questions here 
>>>>>>>> because we're asking things that are very familiar to the regular 
>>>>>>>> devs. So 
>>>>>>>> my "meta" question is, what's the best way for people like myself 
>>>>>>>> (web2py 
>>>>>>>> users) to keep up with planned changes to the api? I know that for me 
>>>>>>>> time 
>>>>>>>> is very scarce, so it's not realistic for me to keep up with things 
>>>>>>>> like 
>>>>>>>> this by following the forums. So is it just that I should be reading 
>>>>>>>> the 
>>>>>>>> release notes?
>>>>>>>>
>>>>>>>> Maybe (just a suggestion) there could be a pinned thread at the top 
>>>>>>>> of the group here with announcements about upcoming api changes. I'm 
>>>>>>>> thinking something that would be a "read only" thread (if such a thing 
>>>>>>>> is 
>>>>>>>> possible) that could be a 1-stop way for users like me to keep up with 
>>>>>>>> the 
>>>>>>>> api. If what I'm suggesting sounds lazy, please understand that it's 
>>>>>>>> coming 
>>>>>>>> from a user trying to survive chronically without enough hours in the 
>>>>>>>> day. 
>>>>>>>> So if there's a better way (or if I'm just asking too much of devs) 
>>>>>>>> then 
>>>>>>>> just say so.
>>>>>>>>
>>>>>>>> Anyway, as I said to Niphlod, I apologize if my question came 
>>>>>>>> across as a complaint. I really do appreciate what all of you devs are 
>>>>>>>> doing.
>>>>>>>>
>>>>>>>> Ian
>>>>>>>>
>>>>>>>> On Friday, April 10, 2015 at 12:13:57 PM UTC-4, Richard wrote:
>>>>>>>>>
>>>>>>>>> crud is deprecated since 2-3 years... Use SQLFORM and manage the 
>>>>>>>>> permissions yourself that is the only drawback and to me it is not a 
>>>>>>>>> really 
>>>>>>>>> an issue since it allow you to more easily manage your access...
>>>>>>>>>
>>>>>>>>> crud = prototype app really rapidly for proof of concept
>>>>>>>>> real app = HTML form (beurk I don't like this, but for really hard 
>>>>>>>>> case), FORM, SQLFORM, SQLFORM.factory, SQLFORM.grid (which is 
>>>>>>>>> consider the 
>>>>>>>>> next crud and may be deprecated in the futur)
>>>>>>>>>
>>>>>>>>> Richard
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Fri, Apr 10, 2015 at 11:56 AM, Niphlod <[email protected]> 
>>>>>>>>> wrote:
>>>>>>>>>
>>>>>>>>>> right now I'm, just bashing my head around the fact that I should 
>>>>>>>>>> have kept my mouth shut.
>>>>>>>>>> What was I thinking about telling the same thing yet another time 
>>>>>>>>>> ? 
>>>>>>>>>> Why suddenly everybody realizes that crud is no longer a "happy" 
>>>>>>>>>> option ?
>>>>>>>>>> Why there are threads pointing ME as the bad guy who deprecated 
>>>>>>>>>> Crud ? :P
>>>>>>>>>> Would you be happier knowing that crud is till supported (but 
>>>>>>>>>> untouched for the last 2 years) ?
>>>>>>>>>> Didn't anyone notice that Crud "magically disappeared" long ago 
>>>>>>>>>> from the scaffolding app ?
>>>>>>>>>> Why can't you just use it and if your'e fine with it it's all 
>>>>>>>>>> going to be fine ?
>>>>>>>>>>
>>>>>>>>>> The only thing is that WHEN you'll spot a bug, nobody will jump 
>>>>>>>>>> in to fix it!
>>>>>>>>>>
>>>>>>>>>> -- 
>>>>>>>>>> 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 [email protected].
>>>>>>>>>> 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 [email protected].
>>>>>>>> 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 [email protected].
>>>>>> 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 [email protected].
>>>> 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 [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to