Canonic tables you get a hosted MonogDB to use anywhere in your app with a graph-like interface that is available for all the users for free, you can log in and access any of your projects
Tanisha Chouhan
Wed Jan 10 2024 • 9 min read
In today's data-driven landscape, Canonic stands as a robust and versatile platform for managing and harnessing the potential of your data. In this blog post, we will delve into the intricacies of Canonic's data management features, offering you a deeper understanding of how to maximize its capabilities.
With Canonic tables you get a hosted MonogDB to use anywhere in your app with a graph-like interface that is available for all the users for free, you can log in and access any of your projects, Now lets you diver deeper
1. Canonic Tables: The core of data management
Canonic Tables offers a hosted MongoDB service that you can seamlessly integrate into your application. This service provides a graph-like interface, making it intuitive and user-friendly. Best of all, it's available free of charge to all users. You can easily log in and access it across any of your projects. Now, let's delve deeper and explore its capabilities.
Central to Canonic's robust data management features are the Canonic Tables. These tables are the cornerstone of your data architecture, providing a solid base upon which you can build and customize your data models. Creating these tables is deliberately simple, enabling you to add diverse fields and configure your data structure to meet your specific requirements precisely and easily.
2. Field types Deciphered
Here are some that warrant further exploration:
Text:
Definition: A straightforward field type that caters to plain textual data.
Usage: Ideal for names, titles, descriptions, or any other textual data without the need for formatting. Provides a clean, uncluttered user input method.
Rich Text:
Definition: Offers an enhanced text input environment.
Features: Equipped with tools for formatting, it supports bolding, italicizing, underlining, and more.
Usage: Perfect for content that requires visual differentiation, like blog posts or product descriptions.
Number:
Definition: Dedicated for numerical data input.
Precision: Supports both integers and floating-point numbers, accommodating a wide range of numerical data.
Usage: Useful for age, price, quantity, or any other number-based data fields.
Date:
Definition: A dedicated field for date values.
Interface: Provides a calendar dropdown, ensuring accurate and standardized date input.
Usage: Ideal for birthdates, event dates, or any other date-specific information.
Time:
Definition: Tailored for capturing specific moments of the day.
Format: Users can input time in a standardized HH:MM format, ensuring consistency.
Usage: Useful for scheduling, event timings, or tracking daily routines.
Image:
Definition: A field dedicated to visual content.
Functionality: Allows users to upload image files, ensuring that the content is visually appealing.
Usage: Perfect for product images, profile photos, or any visual content.
File:
Definition: A versatile field for file storage.
Flexibility: Supports a wide variety of file formats, from documents to zip files.
Usage: Useful for downloadable resources, document storage, or any other file-based data.
Toggle:
Definition: A simple switch mechanism.
Output: Returns a boolean value, typically true or false.
Usage: Ideal for options, settings, or any binary decisions.
Link:
Definition: A powerful relational tool in the realm of database management.
Functionality: Establishes connections between different tables, enhancing the depth of your data structure.
Usage: Useful for setting up relationships like categories to products or authors to articles.
Picker:
Definition: A field dedicated to managing pairs of information.
Functionality: Simplifies the selection process by presenting key-value pairs, ensuring efficient and error-free data selection.
Usage: Suitable for dropdown lists, categories, or any scenario requiring paired data selection.
ID:
Definition: A system field ensuring each data entry's uniqueness.
Generation: Produces identifiers that can either be sequential or randomized UUIDs.
Usage: Vital for indexing, data retrieval, and ensuring database integrity.
Compute:
Definition: A dynamic field offering advanced data manipulation capabilities.
Flexibility: Allows users to write custom JavaScript functions that act upon data within the CMS, post-deployment.
Usage: Perfect for calculations, data transformations, or any bespoke data operation needs.
Canonic provides these diverse field types to ensure that every piece of data, regardless of its nature or complexity, can be accurately and efficiently represented within its system.
3. Field sets: Organizing data fields
A field set is essentially a container or a subgroup within a table that holds related fields together. It acts as a subsection, providing a clearer visual and logical structure to your data.
Benefits:
Clarity: By grouping related fields, field sets provide a cleaner view, reducing clutter and making navigation smoother.
Efficiency: When adding or editing data, users can quickly locate the fields they need to interact with, thanks to the organized structure.
Expandability: As data needs evolve, new fields can be added to a specific field set without disrupting the overall structure of the table.
Example:
Imagine you're creating a "Person" table. Initially, you might have basic fields like:
Name
Image
Status Toggle (e.g., Active/Inactive)
Over time, as your needs expand, you might need to maintain a list of contacts for each person. Instead of adding these fields directly to the main table and causing potential confusion, you can create a fieldset titled "Contacts." Within this field set, you might have:
Contact Name
Contact Number
Relationship Description (using Rich Text)
Contact Image
By employing a field set, not only is the "Person" table more organized, but it also becomes evident that these new fields specifically pertain to the contacts of the person, and not the main individual.
In essence, field sets in Canonic are tools for better data management, offering a blend of organization and flexibility that caters to both simple and complex database needs.
4. Validation rules: Safeguarding data integrity Canonic empowers you with the ability to define validation rules tailored to specific field types, ensuring the integrity of your data. For example:
Text Fields:
Email Validation: Eliminate the chances of receiving incorrect email addresses by ensuring that the entered data follows the standard email format.
Character Limits: Define maximum and minimum character lengths. This is crucial for fields like usernames, tweets, or product titles.
Custom Regular Expressions: For those specific and niche requirements, you can set up a regex pattern to validate data. For instance, validate serial numbers, codes, or specialized strings.
Number Fields:
Range Validation: Set up boundaries to your numerical data. Check if an entered value falls within, above, or below a defined range. This can be helpful in scenarios like age restrictions, product quantity limits, or discount codes.
Image or File Fields:
File Type Acceptance: Have more control over the kind of files being uploaded. Configure the fields to accept only specific extensions like ".jpg", ".docx", or ".pdf".
Mandatory Files: In scenarios where a document or image is critical, such as profile pictures or identity verifications, you can set the file field as "required", ensuring users cannot proceed without uploading the necessary file.
Universal Field Setting:
Required Configuration: Regardless of the type of field, be it text, number, image, or any other, Canonic offers the ability to mark any field as mandatory. This ensures that crucial information is never missed out and that data entries are always comprehensive.
5. Built-in system fields: The backbone of data management Every Canonic table is equipped with three essential built-in system fields:
ID:
Definition: Every entry in your database requires a unique tag to distinguish it from others, and this is where the ID comes into play.
Format: In Canonic, this identifier is presented in the UUID (Universally Unique Identifier) format. It's a string of numbers and letters, ensuring that each ID remains globally unique.
Importance: The presence of a unique ID for each entry means that data can be fetched, updated, or deleted with precision, without risking unintended changes to other entries.
Created At:
Definition: This is an automated timestamp that gets recorded the moment a new entry is added to your database.
Functionality: It serves as a historical marker, allowing you to trace back when a particular piece of data first made its appearance.
Utility: "Created At" timestamps can be instrumental in tracking data growth, understanding patterns of data input, or even in debugging scenarios where you might want to inspect recently added data.
Updated At:
Definition: As data is often dynamic, entries in your database might undergo changes after their initial creation. The "Updated At" field records the exact timestamp of the most recent modification made to an entry.
Differentiation: While the "Created At" remains static and unchanging, the "Updated At" timestamp evolves with each edit, giving you a clear picture of an entry's modification history.
Utility: This can be incredibly useful for audit trails, understanding the frequency of data modifications, and ensuring data currency and relevance.
By incorporating these system fields—ID, Created At, and Updated At—Canonic provides a comprehensive overview of each data entry's journey, from its inception to its most recent update, fostering a transparent and traceable data management environment.
6. Primary fields: Swift access to crucial data By designating a text field as the primary field, you provide a quick reference point for each record. Think of it as a "headline" or "label" for each data entry. For instance, in a table of books, the 'title' might be the primary field.
7. Default values: Streamlining data input Fields in Canonic can be configured with default values, simplifying data input and enhancing efficiency. When a new record is being added, fields with default values auto-populate, reducing the number of fields a user needs to manually input. While a default value might be set, it's not rigid. Users have the freedom to modify it during data entry if needed.
This feature isn't limited to just text. Default values can be set for various field types, including numbers, toggles, dates, and more.
8. Workflow creation: Managing data operations Canonic doesn't just give you a space to store and view your data; it provides a dynamic system to manipulate and interact with your data in real-time. By setting up workflows for your tables, you harness the capability to manage specific data operations based on your application's needs. Below, we delve deeper into the five fundamental CRUD operations:
Get One:
Purpose: This operation is designed for situations where you need to fetch a single, specific record from your table.
Use Cases: Displaying a user profile, viewing details of a specific product, or pulling up an individual transaction record.
Customization: You can define criteria or parameters to identify the specific record.
Get All:
Purpose: Perfect for times when you need an overview or a list of multiple records.
Use Cases: Listing all users registered on a platform, displaying a catalog of products, or showcasing blog posts on a webpage.
Customization: Incorporate pagination, sort by specific fields, or filter results to display precisely what you need. You can also limit the number of records fetched in a single call.
Update:
Purpose: Make changes to the existing data.
Use Cases: Editing a user's profile, updating the price of a product, or modifying the content of a blog post.
Customization: Implement conditional logic to validate changes. For instance, only allow price changes by authorized users or restrict editing after a certain time frame.
Create:
Purpose: Introduce new records to your system.
Use Cases: Registering a new user, adding a product to the inventory, or creating a new article.
Customization: Set default values for certain fields, enforce data validation rules, or trigger additional operations like sending a welcome email upon new user registration.
Delete:
Purpose: Erase records from your database. It's a sensitive operation and should be managed with caution.
Use Cases: Deleting a user account, removing a discontinued product, or wiping out obsolete data.
Customization: Introduce safety checks or multi-step verifications to ensure data isn't accidentally deleted. You can also set up archival systems to keep a backup of deleted records for a specific duration.
Remember, while these CRUD operations form the backbone of data management, Canonic offers layers of sophistication and customization, ensuring your workflows are as straightforward or as intricate as you need them to be.
9. Data configuration and customization: Tailoring your data Once you've configured your tables and deployed them, the Canonic CMS you can manually enter data, edit existing entries. You can use search feature to navigate through your entries.
Additionally, you can fine-tune your workflows in the dedicated workflow section, customizing data read and processing procedures,in this dedicated space, you can define the behavior of your endpoints.
This goes beyond simple CRUD operations. Add pre and post processing logic, determine how the data is fetched, filtered, and returned.
Get started on your data management journey
Canonic is a versatile and powerful platform for data management. Whether you're developing a website, application, or any digital project, a deep understanding of these key Canonic features will empower you to create an efficient and organized data ecosystem.
Ready to harness the full potential of your data? Dive into the world of Canonic today and experience the difference for yourself.