我被困住了需要帮助。
我正在使用这个gist https://gist.github.com/gluc/d39cea3d11f03542970b
基本上,在一个闪闪发亮的应用程序中,它提供了使CRUD操作的可能性,而且它的工作原理非常完美。
现在,我设法将数据存储在googlesheets上,并将数据从read_sheet包加载到:googlesheets4函数中。
问题是,如果我想删除闪亮应用程序中表的最后一行,则在按删除按钮之后,删除第一行。
只有在加载预先存在的数据(在我的例子中是从googlesheet加载)时,才会出现此问题。我遇到了这个问题:当我单击闪亮的应用程序表中的行时,id没有更新。
我使用了browser(),并遍历了每个函数,但是我找不到问题。
如果我单击第一行并删除第一行--所有操作都是完美的,但是单击第二行或除第一行以外的任何其他行,则始终删除第一行。
更新:我认为主要的问题是,在从护目镜表中读取数据之后,禁用的Id字段没有与表一起导航,请参阅图片。
如果我单击第3行,那么Id字段应该是3,但它始终停留在1。因此,表上的任何操作(例如删除)都会删除第一行。
我无法在环境中开始加载的数据和CRUD应用程序定义的数据之间获得链接。akrun的想法是完美的,应该有效,但它没有:
在代码的开头,我将read_sheet(...)表分配给如下响应:
df_id_read_sheet <- read_sheet("......")
responses <- df_id_read_sheet

发布于 2022-03-27 06:23:33
在一晚没睡觉之后。我找到了解决办法。就像我想的那么简单。按照the @akrun的第一个建议,我向str检查了已加载的googlesheet的结构。
在将工作表转换为tibble并将完整代码按预期方式分配给responses之后,将其作为data.frame导入。因为名字的缘故,伊苏大吵起来了。
使用browser(),在将工作表分配给responses之后,我就能够看到并检查控制台上闪亮的应用程序中的结构。
我真的很喜欢用broswer()进行调试,因为它使我能够看到闪亮的应用程序中发生了什么。
下面是一个简单但很难发现的解决方案:在您闪亮的应用程序代码的开头:
library(magritter)
df_id_read_sheet <- read_sheet("put your sheet id here")
responses <- df_id_read_sheet
responses %<>%
as.data.frame()https://stackoverflow.com/questions/71626205
复制相似问题