p = params.fetch(:p, 1) s = params.fetch(:s, @@RECORDS_PER_PAGE) p = p.to_i s = s.to_iErlyweb:
-module(mymodel_controller).. -define(RECORDS_PER_PAGE, "9"). list(A) -> P = yaws_params:get("p", A, "1"), S = yaws_params:get("s", A, ?RECORDS_PER_PAGE), Page = list_to_integer(P), Size = list_to_integer(S), ....To get the above code working, I wrote a yaws_params.erl and placed under folder: apps\myapp\lib, maybe it should be part of Erlyweb?
-module(yaws_params). -export([ get/2, get/3 ]). get(Key, Arg) -> get(Key, Arg, undefined). %% Usage: get(Key, Arg, Default) get(Key, Arg, Default) -> Params = yaws_api:parse_query(Arg), %% in form of [{p, "2"}, {s, "1"}] etc. case lists:keysearch(Key, 1, Params) of false -> Default; {value, Tuple} -> Val = element(2, Tuple), if Val == undefined -> Default; true -> Val end end.