Class: Supabase::Postgrest::QueryRequestBuilder
- Inherits:
-
Object
- Object
- Supabase::Postgrest::QueryRequestBuilder
- Defined in:
- lib/supabase/postgrest/request_builder.rb
Overview
Builder returned by select() / insert() / upsert() / update() / delete() — call #execute to fire.
Direct Known Subclasses
Instance Attribute Summary collapse
-
#request ⇒ Object
readonly
Returns the value of attribute request.
Instance Method Summary collapse
- #execute ⇒ Object
-
#initialize(request) ⇒ QueryRequestBuilder
constructor
A new instance of QueryRequestBuilder.
- #retry(enabled) ⇒ Object
- #select(*columns) ⇒ Object
Constructor Details
#initialize(request) ⇒ QueryRequestBuilder
Returns a new instance of QueryRequestBuilder.
388 389 390 391 |
# File 'lib/supabase/postgrest/request_builder.rb', line 388 def initialize(request) @request = request @negate_next = false end |
Instance Attribute Details
#request ⇒ Object (readonly)
Returns the value of attribute request.
386 387 388 |
# File 'lib/supabase/postgrest/request_builder.rb', line 386 def request @request end |
Instance Method Details
#execute ⇒ Object
408 409 410 411 412 413 414 415 |
# File 'lib/supabase/postgrest/request_builder.rb', line 408 def execute response = RequestExec.send_with_retry(@request) if (200..299).include?(response.status) APIResponse.from_response(response, request_prefer: @request.headers["Prefer"]) else raise RequestExec.parse_error(response) end end |
#retry(enabled) ⇒ Object
393 394 395 396 |
# File 'lib/supabase/postgrest/request_builder.rb', line 393 def retry(enabled) @request.retry_enabled = enabled self end |
#select(*columns) ⇒ Object
398 399 400 401 402 403 404 405 406 |
# File 'lib/supabase/postgrest/request_builder.rb', line 398 def select(*columns) _, params, _, _ = RequestPrep.pre_select(*columns, count: nil) @request.params["select"] = params["select"] prefer = @request.headers["Prefer"] || "" parts = prefer.split(",").reject { |h| h.start_with?("return=") } parts << "return=representation" @request.headers["Prefer"] = parts.join(",") self end |