I don't understand what is wrong

20 views
Skip to first unread message

12u...@gmail.com

unread,
Jan 4, 2022, 5:54:46 AM1/4/22
to Nitrogen Project / The Nitrogen Web Framework for Erlang
Hi list,

From search page, I jump to modif page.

Modif page has almost the same aspect as create page, although several fields must be R/O and of course must be filled.

At this time, I use wf:session(pl_offer_last_row) to pass data (in a proplist) selected from the search page to the modif one (might not be the best choice but it doesn't matter at this stage).

The thing I don't understand is my modif page looks like that :
```
page_rendering() ->
    Body = [ #txtbxt{id=reference}, #label{id=mylabel}, etc ]
    , do_something()
    , Body
    , fill_widgets().

fill_widgets() ->
    OfferPl = wf:session(pl_offer_last_row)
    , ?PRINT(OfferPl)    %% Proplist prints right
    %% Set R/O fields
    wf:set(offer_reference, erlang:integer_to_list(proplist:get_value(reference, OfferPl)))
    …
```
as soon as I reach the red line (# 905), the page fails with this message :
```
{error,first_request,
    {url,"nitrogen.defcon1.lan/offer/modif"},
    {error,undef,
        [{proplist,get_value,
             [reference,
              [{id,8},
               {reference,<<"kkkkkk">>},
               {date_published,{2021,11,2}},
[…]
{offer_modif,set_offer_latest_row,0,
              [{file,"/home/niff/ERLANG/SITES_NITROGEN/emploi/site/src/offer_modif.erl"},
               {line,905}]},
 {element_function,call_next_function,1,
                   [{file,"src/elements/other/element_function.erl"},
                    {line,35}]},
 {wf_render_elements,call_element_render,3,
                     [{file,"src/lib/wf_render_elements.erl"},{line,158}]},
 {wf_render_elements,prepare_and_render,3,
                     [{file,"src/lib/wf_render_elements.erl"},{line,127}]},
 {wf_render_elements,inner_render_elements,1,
                     [{file,"src/lib/wf_render_elements.erl"},{line,42}]},
 {wf_render_elements,inner_render_elements,1,
                     [{file,"src/lib/wf_render_elements.erl"},{line,42}]},
 {wf_render_elements,prepare_and_render,3,
                     [{file,"src/lib/wf_render_elements.erl"},{line,127}]}]
```
So, I'm not able to update any field (#txtbx{}, #label{}, etc) and the page doesn't render at all.

NB: eliminating the line : readonly=true from the widgets doesn't change anything.

NB: trying to do it directly on the : text=… line of the widget also fails with the same error :(

Where am I wrong and how could I fill my page without any user intervention ?

Jean-Yves

12u...@gmail.com

unread,
Jan 4, 2022, 7:26:06 AM1/4/22
to Nitrogen Project / The Nitrogen Web Framework for Erlang
Note that I mixed 2 versions which induced an error,the "erlang:integer_to_list()" that isn't there in fact.

braun...@gmail.com

unread,
Jan 4, 2022, 7:31:05 AM1/4/22
to Nitrogen Project / The Nitrogen Web Framework for Erlang
Its "proplists:get_value" instead of "proplist:..."

Although intimidating, the error trace is saying it ({error, undef, ...})

12u...@gmail.com

unread,
Jan 4, 2022, 7:44:37 AM1/4/22
to Nitrogen Project / The Nitrogen Web Framework for Erlang
> Its "proplists:get_value" instead of "proplist:..."

OMFG, I'm gonna commit suicide with a loaded banana…
My fault, my editor doesn't enforce the Erlang syntax.

> Although intimidating, the error trace is saying it ({error, undef, ...})

Now I understand this error, I though it was related to the proplists access.

Thanks a lot b!
Reply all
Reply to author
Forward
0 new messages