Models
Models are classes, They talk to the database, store and validate data.
As in Rails, Kogno uses the ActiveRecord
library for this purpose, so the implementation and operation is the same. So you can check out the official Rails documentation if you want to read more about Models.
Creating a new Model
Model classes should be created in bot/models/
directory, where, in most cases, each one should have a corresponding database table. Which was previously configured.
In the example below, we will create Product
model in bot/models/product.rb
file.
For this to work, there must be a table in the database called products
.
Associations
All the models that are needed can be created (with exception of the predefined by Kogno), defining associations between them.
To lear more about associations you can read: A Guide to Active Record Associations.
Predefined models
In a new project, by default the following models and their corresponding tables are created:
User
users
Corresponds to users who are having or have had a conversation with the app.
ChatLog
kogno_chat_logs
Stores log of incoming messages/events and replies, if enabled the project's configuration.
LongPayload
kogno_long_payloads
It allows the creation of payloads with a number of characters greater than those delimited on each platform.
MessengerRecurringNotification
kogno_messenger_recurring_notifications
Stores the user's subscription current status from Messenger Recurring Notifications.
TelegramChatGroup
kogno_telegram_chat_group
Store the Telegram groups or channels where the bot has been included.
Last updated