使用以下Sinatra应用程序
get '/app' do
content_type :json
{"params" => params}.to_json
end
Run Code Online (Sandbox Code Playgroud)
调用:
/app?param1=one¶m2=two¶m2=alt
给出以下结果:
{"params":{"param1":"one","param2":"alt"}}
Params只有两个键,param1和param2.
我理解Sinatra将params设置为哈希值,但它并不代表所有的URL请求.
在Sinatra中有没有办法获取请求中发送的所有URL参数的列表?
我试图在UPDATE语句中的UPDATE上使用PostgreSQL的RETURNING子句,并遇到麻烦。
Postgres允许在INSERT中使用查询子句,例如:
INSERT INTO films
SELECT * FROM tmp_films WHERE date_prod < '2004-05-07';
Run Code Online (Sandbox Code Playgroud)
我想将UPDATE的RETURNING子句用作INSERT的查询子句,例如:
INSERT INTO user_status_history(status)
UPDATE user_status SET status = 'ACTIVE' WHERE status = 'DISABLED' RETURNING status
Run Code Online (Sandbox Code Playgroud)
我可以找到的所有Postgres参考文献都建议RETURNING子句的行为与SELECT子句完全相同,但是当我运行上述代码时,我得到以下信息:
错误:“ UPDATE”或附近的语法错误
第2行:更新user_statuses
尽管能够执行以上查询的UPDATE部分而没有错误。
是否可以将UPDATE中的RETURNING子句用作INSERT的查询子句的查询子句?
目标是如果可能的话,更新一个表并通过单个查询插入另一个表。