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.
394 395 396 397 |
# File 'lib/supabase/postgrest/request_builder.rb', line 394 def initialize(request) @request = request @negate_next = false end |
Instance Attribute Details
#request ⇒ Object (readonly)
Returns the value of attribute request.
392 393 394 |
# File 'lib/supabase/postgrest/request_builder.rb', line 392 def request @request end |
Instance Method Details
#execute ⇒ Object
414 415 416 417 418 419 420 421 |
# File 'lib/supabase/postgrest/request_builder.rb', line 414 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
399 400 401 402 |
# File 'lib/supabase/postgrest/request_builder.rb', line 399 def retry(enabled) @request.retry_enabled = enabled self end |
#select(*columns) ⇒ Object
404 405 406 407 408 409 410 411 412 |
# File 'lib/supabase/postgrest/request_builder.rb', line 404 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 |