在浏览器中查看该页面时,您应该开始看到我们填充的初始数据!

\\\"Connecting

SupabaseJS 适配器 - 客户端脚本

如果您的应用碰巧使用 Supabase JavaScript 客户端库(您可以在其文档网站上阅读更多相关信息),您可以将 Supabase 凭据存储在标记之外,从而使其更加灵活。

修改前面的示例,我们首先创建一个 Superbase 客户端对象(更多内容请参见他们的文档)

const supabaseUrl = \\'https://***link***.supabase.co/\\';const supabaseKey = \\'***apiKey***\\';const supabaseClient = supabase.createClient(supabaseUrl, supabaseKey);

然后向 ZingGrid 注册该客户端

ZingGrid.registerClient(supabaseClient);

最后我们将 zg-data 上的适配器属性设置为supabaseJS,我们有以下

        Supabase                            

与以前一样工作

\\\"Connecting

","image":"http://www.luping.net/uploads/20240914/172631197666e56e2895727.png","datePublished":"2024-11-08T14:47:02+08:00","dateModified":"2024-11-08T14:47:02+08:00","author":{"@type":"Person","name":"luping.net","url":"https://www.luping.net/articlelist/0_1.html"}}
”工欲善其事,必先利其器。“—孔子《论语.录灵公》
首页 > 编程 > 将 ZingGrid 连接到 Supabase:在几分钟内添加后端

将 ZingGrid 连接到 Supabase:在几分钟内添加后端

发布于2024-11-08
浏览:289

从我在 Zing 博客上的文章中交叉发布。

Supabase 是一个开源 Firebase 替代品。他们提供多种服务,但出于本文的目的,我们将深入探讨它如何充当网格的简单后端。

初始设置

在开始配置网格之前,我们需要在 Supabase 方面执行几个步骤。

1. 账户创建

我们首先需要创建我们将连接到的 Supabase 帐户。您可以使用此链接注册 Supabase。创建帐户并确认电子邮件后,请继续下一步。

2. 创建您的第一个项目

继续前往仪表板页面并创建一个新项目。请务必记下项目名称和数据库密码。

3.记下项目信息

此时您应该看到您的项目 URL 和 API 密钥。稍后我们需要在代码中将这两个数据提供给 ZingGrid,因此请确保将它们存储在安全的本地文件中。

4. 创建您的第一个表

从侧栏中单击“表编辑器”部分。从这里我们可以创建我们的第一个表

Connecting ZingGrid to Supabase: Add a Backend in Minutes

第一步是给我们的表命名,这里我将使用 demoTable

Connecting ZingGrid to Supabase: Add a Backend in Minutes

然后我们可以编辑列,在此示例中我将有两列。一个用于名字,一个用于姓氏。

Connecting ZingGrid to Supabase: Add a Backend in Minutes

5. 添加一些示例数据

Connecting ZingGrid to Supabase: Add a Backend in Minutes

6. 更新安全设置

我们将暂时禁用行级安全性,以便我们可以出于本演示的目的轻松地从表中读取和写入。在生产中,我们需要通过身份验证设置适当的角色。

⚠️ 注意:此设置更改仅用于此演示的目的,不适用于生产

Connecting ZingGrid to Supabase: Add a Backend in Minutes

Supabase 适配器 - REST API

ZingGrid 支持与 Supabase 交互的两种方式 - 通过 REST API 和客户端脚本。我们将首先使用 REST API。

使用下面的初始演示代码,请确保替换以下内容:

  • ***链接*** - 您之前记下的项目 URL
  • ***tableName*** - 您刚刚创建的 Supabase 表的名称
  • ***apiKey*** - 您之前记下的 Supabase API 密钥

  
  
  
  
  Supabase


  
    
      
    
  


在浏览器中查看该页面时,您应该开始看到我们填充的初始数据!

Connecting ZingGrid to Supabase: Add a Backend in Minutes

SupabaseJS 适配器 - 客户端脚本

如果您的应用碰巧使用 Supabase JavaScript 客户端库(您可以在其文档网站上阅读更多相关信息),您可以将 Supabase 凭据存储在标记之外,从而使其更加灵活。

修改前面的示例,我们首先创建一个 Superbase 客户端对象(更多内容请参见他们的文档)

const supabaseUrl = 'https://***link***.supabase.co/';
const supabaseKey = '***apiKey***';
const supabaseClient = supabase.createClient(supabaseUrl, supabaseKey);

然后向 ZingGrid 注册该客户端

ZingGrid.registerClient(supabaseClient);

最后我们将 zg-data 上的适配器属性设置为supabaseJS,我们有以下


  
  
  
  Supabase
  
  
  
  


  
  
    
      
    
  


与以前一样工作

Connecting ZingGrid to Supabase: Add a Backend in Minutes

版本声明 本文转载于:https://dev.to/camdyn_rasque/connecting-zinggrid-to-supabase-add-a-backend-in-minutes-1ebe?1如有侵犯,请联系[email protected]删除
最新教程 更多>
  • 如何在鼠标单击时编程选择DIV中的所有文本?
    如何在鼠标单击时编程选择DIV中的所有文本?
    在鼠标上选择div文本单击带有文本内容,用户如何使用单个鼠标单击单击div中的整个文本?这允许用户轻松拖放所选的文本或直接复制它。 在单个鼠标上单击的div元素中选择文本,您可以使用以下Javascript函数: function selecttext(canduterid){ if(do...
    编程 发布于2025-07-12
  • 查找当前执行JavaScript的脚本元素方法
    查找当前执行JavaScript的脚本元素方法
    如何引用当前执行脚本的脚本元素在某些方案中理解问题在某些方案中,开发人员可能需要将其他脚本动态加载其他脚本。但是,如果Head Element尚未完全渲染,则使用document.getElementsbytagname('head')[0] .appendChild(v)的常规方...
    编程 发布于2025-07-12
  • 如何正确使用与PDO参数的查询一样?
    如何正确使用与PDO参数的查询一样?
    在pdo 中使用类似QUERIES在PDO中的Queries时,您可能会遇到类似疑问中描述的问题:此查询也可能不会返回结果,即使$ var1和$ var2包含有效的搜索词。错误在于不正确包含%符号。通过将变量包含在$ params数组中的%符号中,您确保将%字符正确替换到查询中。没有此修改,PDO...
    编程 发布于2025-07-12
  • 如何处理PHP文件系统功能中的UTF-8文件名?
    如何处理PHP文件系统功能中的UTF-8文件名?
    在PHP的Filesystem functions中处理UTF-8 FileNames 在使用PHP的MKDIR函数中含有UTF-8字符的文件很多flusf-8字符时,您可能会在Windows Explorer中遇到comploreer grounder grounder grounder gro...
    编程 发布于2025-07-12
  • JavaScript计算两个日期之间天数的方法
    JavaScript计算两个日期之间天数的方法
    How to Calculate the Difference Between Dates in JavascriptAs you attempt to determine the difference between two dates in Javascript, consider this s...
    编程 发布于2025-07-12
  • Java的Map.Entry和SimpleEntry如何简化键值对管理?
    Java的Map.Entry和SimpleEntry如何简化键值对管理?
    A Comprehensive Collection for Value Pairs: Introducing Java's Map.Entry and SimpleEntryIn Java, when defining a collection where each element com...
    编程 发布于2025-07-12
  • Python中何时用"try"而非"if"检测变量值?
    Python中何时用"try"而非"if"检测变量值?
    使用“ try“ vs.” if”来测试python 在python中的变量值,在某些情况下,您可能需要在处理之前检查变量是否具有值。在使用“如果”或“ try”构建体之间决定。“ if” constructs result = function() 如果结果: 对于结果: ...
    编程 发布于2025-07-12
  • 解决MySQL插入Emoji时出现的\\"字符串值错误\\"异常
    解决MySQL插入Emoji时出现的\\"字符串值错误\\"异常
    Resolving Incorrect String Value Exception When Inserting EmojiWhen attempting to insert a string containing emoji characters into a MySQL database us...
    编程 发布于2025-07-12
  • 如何将来自三个MySQL表的数据组合到新表中?
    如何将来自三个MySQL表的数据组合到新表中?
    mysql:从三个表和列的新表创建新表 答案:为了实现这一目标,您可以利用一个3-way Join。 选择p。*,d.content作为年龄 来自人为p的人 加入d.person_id = p.id上的d的详细信息 加入T.Id = d.detail_id的分类法 其中t.taxonomy =...
    编程 发布于2025-07-12
  • 为什么不````''{margin:0; }`始终删除CSS中的最高边距?
    为什么不````''{margin:0; }`始终删除CSS中的最高边距?
    在CSS 问题:不正确的代码: 全球范围将所有余量重置为零,如提供的代码所建议的,可能会导致意外的副作用。解决特定的保证金问题是更建议的。 例如,在提供的示例中,将以下代码添加到CSS中,将解决余量问题: body H1 { 保证金顶:-40px; } 此方法更精确,避免了由全局保证金重置引...
    编程 发布于2025-07-12
  • 人脸检测失败原因及解决方案:Error -215
    人脸检测失败原因及解决方案:Error -215
    错误处理:解决“ error:((-215)!empty()in Function Multultiscale中的“ openCV 要解决此问题,必须确保提供给HAAR CASCADE XML文件的路径有效。在提供的代码片段中,级联分类器装有硬编码路径,这可能对您的系统不准确。相反,OPENCV提...
    编程 发布于2025-07-12
  • 切换到MySQLi后CodeIgniter连接MySQL数据库失败原因
    切换到MySQLi后CodeIgniter连接MySQL数据库失败原因
    Unable to Connect to MySQL Database: Troubleshooting Error MessageWhen attempting to switch from the MySQL driver to the MySQLi driver in CodeIgniter,...
    编程 发布于2025-07-12
  • CSS可以根据任何属性值来定位HTML元素吗?
    CSS可以根据任何属性值来定位HTML元素吗?
    靶向html元素,在CSS 中使用任何属性值,在CSS中,可以基于特定属性(如下所示)基于特定属性的基于特定属性的emants目标元素: 字体家庭:康斯拉斯(Consolas); } 但是,出现一个常见的问题:元素可以根据任何属性值而定位吗?本文探讨了此主题。的目标元素有任何任何属性值,属...
    编程 发布于2025-07-12
  • 如何使用Python理解有效地创建字典?
    如何使用Python理解有效地创建字典?
    在python中,词典综合提供了一种生成新词典的简洁方法。尽管它们与列表综合相似,但存在一些显着差异。与问题所暗示的不同,您无法为钥匙创建字典理解。您必须明确指定键和值。 For example:d = {n: n**2 for n in range(5)}This creates a dicti...
    编程 发布于2025-07-12
  • C++成员函数指针正确传递方法
    C++成员函数指针正确传递方法
    如何将成员函数置于c 的函数时,接受成员函数指针的函数时,必须同时提供对象的指针,并提供指针和指针到函数。需要具有一定签名的功能指针。要通过成员函数,您需要同时提供对象指针(此)和成员函数指针。这可以通过修改Menubutton :: SetButton()(如下所示:[&& && && &&华)...
    编程 发布于2025-07-12

免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。

Copyright© 2022 湘ICP备2022001581号-3