Module: CafeCar

Extended by:
AutoResolver, ProcHelpers
Includes:
Resolver
Defined in:
lib/cafe_car.rb,
lib/cafe_car/ui.rb,
lib/cafe_car/engine.rb,
lib/cafe_car/fields.rb,
lib/cafe_car/filter.rb,
lib/cafe_car/context.rb,
lib/cafe_car/current.rb,
lib/cafe_car/helpers.rb,
lib/cafe_car/routing.rb,
lib/cafe_car/version.rb,
lib/cafe_car/resolver.rb,
lib/cafe_car/component.rb,
app/ui/cafe_car/ui/card.rb,
app/ui/cafe_car/ui/grid.rb,
app/ui/cafe_car/ui/page.rb,
lib/cafe_car/controller.rb,
lib/cafe_car/field_info.rb,
lib/cafe_car/informable.rb,
lib/cafe_car/model_info.rb,
lib/cafe_car/name_patch.rb,
lib/cafe_car/navigation.rb,
app/ui/cafe_car/ui/field.rb,
app/ui/cafe_car/ui/button.rb,
app/ui/cafe_car/ui/layout.rb,
lib/cafe_car/form_builder.rb,
lib/cafe_car/href_builder.rb,
lib/cafe_car/link_builder.rb,
lib/cafe_car/proc_helpers.rb,
lib/cafe_car/auto_resolver.rb,
lib/cafe_car/field_builder.rb,
lib/cafe_car/input_builder.rb,
lib/cafe_car/pluralization.rb,
lib/cafe_car/query_builder.rb,
lib/cafe_car/table_builder.rb,
app/models/cafe_car/session.rb,
lib/cafe_car/filter_builder.rb,
lib/cafe_car/option_helpers.rb,
lib/cafe_car/inputs/base_input.rb,
lib/cafe_car/turbo_tag_builder.rb,
lib/cafe_car/inputs/string_input.rb,
app/presenters/cafe_car/presenter.rb,
lib/cafe_car/application_responder.rb,
lib/cafe_car/inputs/password_input.rb,
app/policies/cafe_car/session_policy.rb,
app/presenters/cafe_car/code_presenter.rb,
app/presenters/cafe_car/date_presenter.rb,
app/presenters/cafe_car/hash_presenter.rb,
lib/cafe_car/inputs/belongs_to_builder.rb,
app/presenters/cafe_car/range_presenter.rb,
lib/cafe_car/inputs/association_builder.rb,
app/presenters/cafe_car/record_presenter.rb,
app/presenters/cafe_car/string_presenter.rb,
app/presenters/cafe_car/symbol_presenter.rb,
app/presenters/cafe_car/currency_presenter.rb,
app/presenters/cafe_car/date_time_presenter.rb,
app/presenters/cafe_car/nil_class_presenter.rb,
app/controllers/cafe_car/examples_controller.rb,
app/controllers/cafe_car/sessions_controller.rb,
app/presenters/cafe_car/enumerable_presenter.rb,
app/presenters/cafe_car/true_class_presenter.rb,
app/presenters/cafe_car/false_class_presenter.rb,
app/presenters/cafe_car/basic_object_presenter.rb,
app/controllers/cafe_car/application_controller.rb,
app/controllers/concerns/cafe_car/authentication.rb,
app/presenters/cafe_car/active_record/base_presenter.rb,
app/presenters/cafe_car/action_text/rich_text_presenter.rb,
app/presenters/cafe_car/active_record/relation_presenter.rb,
app/presenters/cafe_car/active_storage/attachment_presenter.rb,
app/presenters/cafe_car/active_storage/attached/one_presenter.rb,
app/presenters/cafe_car/date_and_time/compatibility_presenter.rb

Defined Under Namespace

Modules: ActionText, ActiveRecord, ActiveStorage, Authentication, AutoResolver, Caching, Controller, DateAndTime, Filter, Generators, Helpers, Informable, Inputs, Model, NamePatch, OptionHelpers, Pluralization, Policy, ProcHelpers, Queryable, Resolver, Routing, Table, TurboTagBuilder, UI, Visitors Classes: ApplicationController, ApplicationPolicy, ApplicationResponder, Attributes, AuthenticationFailed, BasicObjectPresenter, CodePresenter, Component, Context, ControllerGenerator, CurrencyPresenter, Current, DatePresenter, DateTimePresenter, Engine, EnumerablePresenter, ExamplesController, FalseClassPresenter, FieldBuilder, FieldInfo, Fields, FilterBuilder, FormBuilder, HashPresenter, HrefBuilder, InputBuilder, InstallGenerator, LinkBuilder, MissingAttributeError, ModelInfo, Navigation, NilClassPresenter, NotesGenerator, ParamParser, PolicyGenerator, Presenter, QueryBuilder, RangePresenter, RecordPresenter, ResourceGenerator, Session, SessionPolicy, SessionsController, SessionsGenerator, StringPresenter, SymbolPresenter, TableBuilder, TrueClassPresenter

Constant Summary collapse

VERSION =
"0.1.2"

Class Method Summary collapse

Methods included from AutoResolver

auto_resolve!, define

Methods included from ProcHelpers

call_procs!, clone_or_call!

Methods included from Resolver

#const, #const!

Class Method Details

.sessions_available?Boolean

Whether the opt-in sessions/login infrastructure is available. True only when the sessions table exists, so a CRUD-only host (no sessions migration) degrades to 403 Forbidden instead of redirecting to a nonexistent login.

Returns:

  • (Boolean)


33
34
35
36
37
# File 'lib/cafe_car.rb', line 33

def self.sessions_available?
  CafeCar[:Session].table_exists?
rescue StandardError
  false
end

.use_relative_model_naming?Boolean

Returns:

  • (Boolean)


20
# File 'lib/cafe_car.rb', line 20

def self.use_relative_model_naming? = true

.user_classObject

The host’s user model, resolved lazily so the constant need not exist at boot. Used by CafeCar::Session for authentication.



28
# File 'lib/cafe_car.rb', line 28

def self.user_class = user_class_name.to_s.constantize