On Sat, May 31, 2014 at 11:07 AM, Ahmad Khayyat <[email protected]> wrote:

> Oops.. I mixed two things.. The new parent passed to can_move can be
> stored in the request argument, but it probably shouldn't.
>
> The new parent returned by can_move, which was the subject of your
> suggestion, is really required in page creation to fall back to in case the
> original parent is illegal.
>
> - If a page move is illegal, the error message is needed (and can be
> enclosed in an exception as you suggested).
>
> - If a page is created in an illegal position, the new parent is needed so
> the page gets created somewhere, instead of being discarded, and the user
> having to re-enter its data. I don't see how else the new page can be
> placed, except for a brute-force-lookup of a legal position by examining
> every existing page as a potential parent.
>

If can_move was validated in the admin's model form, and raised a form
validation error, wouldn't the data entered be retained in the browser
without having to ever save anything to the db? Requiring the developer to
write rules that chooses a parent that the user didn't even select sounds
really convoluted.



>
>
> On Sat, May 31, 2014 at 3:40 AM, Ahmad Khayyat <[email protected]> wrote:
>
>> On Sat, May 31, 2014 at 3:32 AM, Stephen McDonald <[email protected]> wrote:
>>
>>
>>> I'd guess there's no need to define the alternative parent - it should
>>> always be the previous parent prior to moving.
>>>
>>> On Sat, May 31, 2014 at 8:59 AM, Ahmad Khayyat <[email protected]>
>>> wrote:
>>>
>>>> Also, the alternative new parent is used in page creation only to
>>>> insert the new page in a legal position.
>>>>
>>> ​The alternative parent is used when creating a new page in an illegal
>> position. The alternative parent argument can be stored in the request, but
>> I thought an explicit separate argument is more appropriate, as it is
>> /required/ for page creation. There is no other way really to determine the
>> parent of a new page if the one it was created under is illegal.​
>>
>
>  --
> You received this message because you are subscribed to the Google Groups
> "Mezzanine 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.
>



-- 
Stephen McDonald
http://jupo.org

-- 
You received this message because you are subscribed to the Google Groups 
"Mezzanine 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