<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>joshua (joshua)</title>
    <link>https://beta.w2solo.com/joshua</link>
    <description/>
    <language>en-us</language>
    <item>
      <title>Kodev 新增自定义仪表盘功能</title>
      <description>&lt;h3 id="讲在前面"&gt;讲在前面&lt;/h3&gt;
&lt;p&gt;首先在这里跟各位用户先道个歉，因为一些原因，Kodev 在近期出现了服务不稳定的现象，深表歉意。不过目前已经平稳运行，以后我也会小心翼翼，尽量避免此类事情发生。
希望没有对您的使用造成困扰&lt;img title=":pray:" alt="🙏" src="https://twemoji.ruby-china.com/2/svg/1f64f.svg" class="twemoji"&gt; &lt;/p&gt;
&lt;h3 id="此次更新的原因"&gt;此次更新的原因&lt;/h3&gt;
&lt;p&gt;此次功能迭代属于 ToDo list 正常更新，这里再分享一下我们最新的 ToDo list&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;[x] 统计字段&lt;/li&gt;
&lt;li&gt;[x] 自定义仪表盘&lt;/li&gt;
&lt;li&gt;[] 增强权限功能&lt;/li&gt;
&lt;li&gt;[] 增加流程功能&lt;/li&gt;
&lt;li&gt;[] 增加多视图功能&lt;/li&gt;
&lt;li&gt;[] 数据分享功能&lt;/li&gt;
&lt;li&gt;[] 小程序&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="此次更新的意义"&gt;此次更新的意义&lt;/h3&gt;
&lt;p&gt;先来看看下面的动图：&lt;/p&gt;

&lt;p&gt;&lt;img src="https://i.loli.net/2020/06/02/VskxGrl2CQ91ag7.gif" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;最新的完成的制作一个会员系统请访问：&lt;a href="https://taiwutech.com/help?load=creartapp" rel="nofollow" target="_blank" title=""&gt;制作一个会员系统&lt;/a&gt;&lt;/p&gt;
&lt;h4 id="功能简介"&gt;功能简介&lt;/h4&gt;
&lt;p&gt;自定义仪表盘功能可以为每个应用的第一个菜单选项，也就是应用首页，可以通过添加组件的方式添加描述、图表和统计组件来可视化的展示业务表的数据，下面我们进行一一介绍：&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;描述，添加后点击配置选项会显示如下界面（一个富文本编辑器）：&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;img src="https://i.loli.net/2020/06/03/ru8nhI9WBgptqeY.png" title="" alt="微信截图_20200603095020.png"&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;统计&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;用来计算某表字段的个数、数值的总和、平均值、最大/小值，配置界面如下&lt;/p&gt;

&lt;p&gt;&lt;img src="https://i.loli.net/2020/06/03/6vmlJRQuGUnOeiF.png" title="" alt="微信截图_20200603095020.png"&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;图表&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;用来汇总一个业务表中对应类型的所有数值的信息（这些汇总也支持总和、平均值、最大/小值），如果是日期类型字段的分类还将为您转换按照年、季度、月、日的汇总，图表类型支持、饼图（不支持多多类数值）、柱图、折线图配置界面如下：&lt;/p&gt;

&lt;p&gt;&lt;img src="https://i.loli.net/2020/06/03/Dlsb6VWxYuHCILX.png" title="" alt="微信截图_20200603095020.png"&gt;&lt;/p&gt;

&lt;p&gt;如果感兴趣的话，快去使用吧 &lt;a href="https://taiwutech.com/" rel="nofollow" target="_blank" title=""&gt;传送门 &amp;gt;&amp;gt;&lt;/a&gt;&lt;img title=":rocket:" alt="🚀" src="https://twemoji.ruby-china.com/2/svg/1f680.svg" class="twemoji"&gt; &lt;img title=":rocket:" alt="🚀" src="https://twemoji.ruby-china.com/2/svg/1f680.svg" class="twemoji"&gt; &lt;img title=":rocket:" alt="🚀" src="https://twemoji.ruby-china.com/2/svg/1f680.svg" class="twemoji"&gt; &lt;img title=":rocket:" alt="🚀" src="https://twemoji.ruby-china.com/2/svg/1f680.svg" class="twemoji"&gt; &lt;/p&gt;

&lt;p&gt;另外我们现在准备建立一个用户微信群，扫描这个二维码即可添加作者微信：&lt;/p&gt;

&lt;p&gt;&lt;img src="https://i.loli.net/2020/06/03/ehYLN7W5RfHv6sB.png" title="" alt="微信截图_20200603095020.png"&gt;&lt;/p&gt;</description>
      <author>joshua</author>
      <pubDate>Wed, 03 Jun 2020 10:33:02 +0800</pubDate>
      <link>https://beta.w2solo.com/topics/437</link>
      <guid>https://beta.w2solo.com/topics/437</guid>
    </item>
    <item>
      <title>使用 Kodev 3 分钟开发一个宝宝游泳信息管理系统（会员管理系统）</title>
      <description>&lt;p&gt;本次更新，新增动态统计字段，用来统计与本条数据动态关联的数据情况，可以是计数、求和、最小值、最大值或者平均值，下面一个例子来演示这个新功能。&lt;/p&gt;

&lt;p&gt;为了更直观的让您理解 Kodev 的能力，这一章我们试图带着您制作一个十分可用的 宝宝游泳信息管理系统 。&lt;/p&gt;
&lt;h2 id="场景"&gt;场景&lt;/h2&gt;
&lt;p&gt;AA 宝宝游泳馆现在需要将他们的宝宝会员进行管理，并为每一位宝宝办理会员卡，记录每次消费情况、充值情况以及剩余游泳次数的信息。&lt;/p&gt;

&lt;p&gt;这种情况在生活中很常见，类似的会员管理系统我们可能需要很长时间和成本去完善，下面跟着教程在 3 分钟内为您打造一个完美且免费的 宝宝游泳信息管理系统。&lt;/p&gt;
&lt;h2 id="创建表"&gt;创建表&lt;/h2&gt;
&lt;p&gt;我们需要三张表分别来记录宝宝信息（会员信息）、消费记录、充值记录。 OK 我们开始行动吧。&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;创建宝宝信息表，它暂时所包含的字段：姓名（系统字段：标题）、生日（日期）、联系方式、项目类型（游泳、洗澡、按摩）、年龄（公式字段：根据生日计算）；&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;消费记录表：它所包含的字段：消费名（称系统字段：标题，这在不久的 Kodev 移动端会很有用）、宝宝名称（单选：动态关联宝宝信息表 &amp;gt; 姓名字段）、消费日期&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;充值记录：它所包含的字段：充值名（称系统字段：标题，这在不久的 Kodev 移动端会很有用）、宝宝名称（单选：动态关联宝宝信息表 &amp;gt; 姓名字段）、重置金额、充值游泳次数。&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4 id="动态统计 现在我们来使用 动态统计 字段来补充宝宝信息表中的关键信息。"&gt;动态统计 现在我们来使用 &lt;code&gt;动态统计&lt;/code&gt; 字段来补充宝宝信息表中的关键信息。&lt;/h4&gt;
&lt;p&gt;创建消费总次数字段（将消费记录表计数，以统计宝宝使消费了几次）：&lt;/p&gt;

&lt;p&gt;&lt;img src="http://q8dby6r30.bkt.clouddn.com/%E5%BE%AE%E4%BF%A1%E6%88%AA%E5%9B%BE_20200303135705.png" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;创建充值总金额字段（将充值金额求和，以统计宝宝总共充了多少钱）：&lt;/p&gt;

&lt;p&gt;&lt;img src="http://q8dby6r30.bkt.clouddn.com/%E5%BE%AE%E4%BF%A1%E6%88%AA%E5%9B%BE_20200303135705.png" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;创建充值总数字段（将充值金额求和，以统计宝宝总共充了多少次游泳）：&lt;/p&gt;

&lt;p&gt;&lt;img src="http://q8dby6r30.bkt.clouddn.com/undraw_sorting_thoughts_6d48.png" title="" alt=""&gt;&lt;/p&gt;
&lt;h4 id="使用 公式字段 计算宝宝还剩几次游泳机会"&gt;使用 &lt;code&gt;公式字段&lt;/code&gt; 计算宝宝还剩几次游泳机会&lt;/h4&gt;
&lt;p&gt;剩余次数 = 总次数 - 消费次数
公式： &lt;code&gt;${《充值总数》-《消费总数》} 次&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src="http://q8dby6r30.bkt.clouddn.com/undraw_sorting_thoughts_6sd48.png" title="" alt=""&gt;&lt;/p&gt;
&lt;h4 id="使用 公式字段 计算宝宝的年龄（月）"&gt;使用 &lt;code&gt;公式字段&lt;/code&gt; 计算宝宝的年龄（月）&lt;/h4&gt;
&lt;p&gt;宝宝年龄 = 当前时间 - 出生日期，然后换算成月&lt;/p&gt;

&lt;p&gt;公式： &lt;code&gt;${((new Date() - new Date('《生日》'))/1000/3600/365/24*12).toFixed(1)} 个月&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;为系统添加一个编辑者，防止误操作改变的应用表结构，之后我们来看看整体演示效果：&lt;/p&gt;

&lt;p&gt;&lt;img src="http://q8dby6r30.bkt.clouddn.com/90.gif" title="" alt=""&gt;&lt;/p&gt;</description>
      <author>joshua</author>
      <pubDate>Mon, 06 Apr 2020 21:57:30 +0800</pubDate>
      <link>https://beta.w2solo.com/topics/395</link>
      <guid>https://beta.w2solo.com/topics/395</guid>
    </item>
    <item>
      <title>KODEV ServerLess 免费开放自定义界面</title>
      <description>&lt;p&gt;如果你是一名前端工程师，那么这个功能对你来说就爽歪歪了！&lt;/p&gt;

&lt;p&gt;&lt;img src="https://i.loli.net/2020/03/09/IwFkBCYGvMUOt3o.png" title="" alt="微信截图_20200303203605.png"&gt;&lt;/p&gt;

&lt;p&gt;从某种角度来说，使用自定义界面功能，只需要懂得前端知识就可以开发出各种业务系统。&lt;/p&gt;
&lt;h2 id="第一步： 生成安全码"&gt;第一步： 生成安全码&lt;/h2&gt;
&lt;p&gt;&lt;code&gt;安全码&lt;/code&gt; 是站外资源获取网站接口的唯一通行证，默认每个安全码每天的请求次数是 5000 次（ sass 版 ），&lt;code&gt;安全码&lt;/code&gt; 记录了当前自定义界面可以访问的系统权限（超出权限的将不可请求）。&lt;/p&gt;
&lt;h3 id="权限说明"&gt;权限说明&lt;/h3&gt;
&lt;p&gt;&lt;img src="https://i.loli.net/2020/03/09/xtI4Rj2FEbLPCOT.gif" title="" alt="90.gif"&gt;&lt;/p&gt;

&lt;p&gt;如图所示，系统将生成包含权限信息的安全码，其中权限说明如下表所示：&lt;/p&gt;
&lt;table class="table table-bordered table-striped"&gt;
&lt;tr&gt;
&lt;th style="text-align:left;"&gt;权限名&lt;/th&gt;
&lt;th style="text-align:left;"&gt;说明&lt;/th&gt;
&lt;th style="text-align:left;"&gt;相关接口&lt;/th&gt;
&lt;th style="text-align:left;"&gt;方法&lt;/th&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align:left;"&gt;获取数据列表&lt;/td&gt;
&lt;td style="text-align:left;"&gt;获取指定表数据列表的权限&lt;/td&gt;
&lt;td style="text-align:left;"&gt;&lt;code&gt;/appface/table/1/data?pageSize=20&amp;amp;&amp;amp;pageNum=2&lt;/code&gt;&lt;/td&gt;
&lt;td style="text-align:left;"&gt;&lt;code&gt;get&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align:left;"&gt;新增数据&lt;/td&gt;
&lt;td style="text-align:left;"&gt;为指定表格增加一条数据&lt;/td&gt;
&lt;td style="text-align:left;"&gt;&lt;code&gt;/appface/table/1/data&lt;/code&gt;&lt;/td&gt;
&lt;td style="text-align:left;"&gt;&lt;code&gt;post&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align:left;"&gt;获取数据详情&lt;/td&gt;
&lt;td style="text-align:left;"&gt;获取指定数据的详细信息&lt;/td&gt;
&lt;td style="text-align:left;"&gt;&lt;code&gt;/appface/table/1/data/333&lt;/code&gt;&lt;/td&gt;
&lt;td style="text-align:left;"&gt;&lt;code&gt;get&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align:left;"&gt;修改数据&lt;/td&gt;
&lt;td style="text-align:left;"&gt;修改指定表格的数据&lt;/td&gt;
&lt;td style="text-align:left;"&gt;&lt;code&gt;/appface/table/1/data/333&lt;/code&gt;&lt;/td&gt;
&lt;td style="text-align:left;"&gt;&lt;code&gt;put&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align:left;"&gt;删除数据&lt;/td&gt;
&lt;td style="text-align:left;"&gt;删除指定表格的数据&lt;/td&gt;
&lt;td style="text-align:left;"&gt;&lt;code&gt;/appface/table/1/data/333&lt;/code&gt;&lt;/td&gt;
&lt;td style="text-align:left;"&gt;&lt;code&gt;delete&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align:left;"&gt;上传文件&lt;/td&gt;
&lt;td style="text-align:left;"&gt;上传文件&lt;/td&gt;
&lt;td style="text-align:left;"&gt;&lt;code&gt;/appface/table/1/upload&lt;/code&gt;&lt;/td&gt;
&lt;td style="text-align:left;"&gt;&lt;code&gt;post&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td style="text-align:left;"&gt;删除文件&lt;/td&gt;
&lt;td style="text-align:left;"&gt;删除指定文件&lt;/td&gt;
&lt;td style="text-align:left;"&gt;&lt;code&gt;/appface/upload/11&lt;/code&gt;&lt;/td&gt;
&lt;td style="text-align:left;"&gt;&lt;code&gt;delete&lt;/code&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;&lt;h2 id="第二步： 安全码使用"&gt;第二步： 安全码使用&lt;/h2&gt;
&lt;p&gt;请将&lt;code&gt;安全码&lt;/code&gt;通过 http 协议的 headers 的 &lt;code&gt;safecode&lt;/code&gt; 发送给后端，下面是一个使用 JQuery 的示例：&lt;/p&gt;
&lt;pre class="highlight javascript"&gt;&lt;code&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;script&lt;/span&gt; &lt;span class="nx"&gt;src&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;https://cdn.bootcss.com/jquery/3.4.1/jquery.js&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/script&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="nx"&gt;script&lt;/span&gt;&lt;span class="o"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="nx"&gt;$&lt;/span&gt;&lt;span class="p"&gt;(()&lt;/span&gt; &lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
    &lt;span class="nx"&gt;$&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;ajax&lt;/span&gt;&lt;span class="p"&gt;({&lt;/span&gt;
        &lt;span class="c1"&gt;// 获取表 1 的数据 1，实际中你可以使用 url 传参使这里动态&lt;/span&gt;
        &lt;span class="na"&gt;url&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;/appface/table/1/data/1&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="na"&gt;method&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;get&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="na"&gt;headers&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
            &lt;span class="na"&gt;safecode&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;"&lt;/span&gt;&lt;span class="s2"&gt;eyJyb2xlIjpbImdldERhdGFEZXRhaWwiLCJkZWxldGVGaWxlIl0sImFwcGlkIjoiMSJ9.dc148c4b62ac63441e5955ebb6fecba4&lt;/span&gt;&lt;span class="dl"&gt;"&lt;/span&gt;
        &lt;span class="p"&gt;},&lt;/span&gt;
        &lt;span class="na"&gt;success&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="kd"&gt;function&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;result&lt;/span&gt;&lt;span class="p"&gt;){&lt;/span&gt;
            &lt;span class="k"&gt;if&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;result&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;code&lt;/span&gt; &lt;span class="o"&gt;==&lt;/span&gt; &lt;span class="mi"&gt;200&lt;/span&gt;&lt;span class="p"&gt;){&lt;/span&gt;
                &lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;str&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="dl"&gt;""&lt;/span&gt;
                &lt;span class="k"&gt;for&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="kd"&gt;let&lt;/span&gt; &lt;span class="nx"&gt;key&lt;/span&gt; &lt;span class="k"&gt;in&lt;/span&gt; &lt;span class="nx"&gt;result&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;data&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;data&lt;/span&gt;&lt;span class="p"&gt;){&lt;/span&gt;
                    &lt;span class="nx"&gt;str&lt;/span&gt; &lt;span class="o"&gt;+=&lt;/span&gt; &lt;span class="s2"&gt;`&amp;lt;li&amp;gt;&amp;lt;b&amp;gt;&lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="nx"&gt;result&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;data&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;title&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;key&lt;/span&gt;&lt;span class="p"&gt;]}&lt;/span&gt;&lt;span class="s2"&gt;&amp;lt;/b&amp;gt;：&lt;/span&gt;&lt;span class="p"&gt;${&lt;/span&gt;&lt;span class="nx"&gt;result&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;data&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nx"&gt;data&lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="nx"&gt;key&lt;/span&gt;&lt;span class="p"&gt;]}&lt;/span&gt;&lt;span class="s2"&gt;&amp;lt;/li&amp;gt;`&lt;/span&gt; 
                &lt;span class="p"&gt;};&lt;/span&gt;
                &lt;span class="nx"&gt;$&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;#contener&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;).&lt;/span&gt;&lt;span class="nx"&gt;html&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;str&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
            &lt;span class="p"&gt;}&lt;/span&gt;
        &lt;span class="p"&gt;}&lt;/span&gt;
    &lt;span class="p"&gt;});&lt;/span&gt;
&lt;span class="p"&gt;});&lt;/span&gt;
&lt;span class="o"&gt;&amp;lt;&lt;/span&gt;&lt;span class="sr"&gt;/script&lt;/span&gt;&lt;span class="err"&gt;&amp;gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;上面的代码实现了获取表 id 为 1 的编号为 1 的数据详情。&lt;/p&gt;
&lt;h3 id="仅安全码访问"&gt;仅安全码访问&lt;/h3&gt;
&lt;p&gt;细心的你可能发现了上面的示例代码 Headers 中没有传 token 相关参数。&lt;/p&gt;

&lt;p&gt;有时候我们不需要用户登录就可以查看数据信息，比如资产管理系统，你可以用自定义界面制作二维码查看界面，开启仅安全码访问，并将链接制作成二维码张贴在资产上，就可以让所有人扫描二维码查看设备信息了。&lt;/p&gt;

&lt;p&gt;这是比较危险的操作，因为所有人将都有权访问你权限认可的接口数据，所以尽量在使用此功能时缩小权限范围。防止数据泄露。&lt;/p&gt;

&lt;p&gt;仅使用安全码获取数据的权限相当于应用查看者和安全码权限的合集。&lt;/p&gt;

&lt;p&gt;&lt;img src="https://i.loli.net/2020/03/09/pNngE9eLO6x7bKf.gif" title="" alt="12.gif"&gt;&lt;/p&gt;

&lt;p&gt;只有托管在 KODEV 平台的自定义界面可以使用此功能。其他平台必须用户登录才可以获取数据。&lt;/p&gt;

&lt;p&gt;如果你自己服务器和域名，可以选择将自定义界面上传到你自己的服务器，对此我们不限制您的文件要求，只要通过下面接口请求就可以，但请记住接口请求的日限制数。&lt;/p&gt;

&lt;p&gt;KODEV 提供 2M 的免费空间。所以尽量省着用，能 CDN 的资源请 CDN 到外部。&lt;/p&gt;

&lt;p&gt;详细说明，请移步 &lt;a href="https://taiwutech.com/help?load=appFace" rel="nofollow" target="_blank" title=""&gt;自定义界面 》》&lt;/a&gt;&lt;/p&gt;</description>
      <author>joshua</author>
      <pubDate>Mon, 09 Mar 2020 20:52:56 +0800</pubDate>
      <link>https://beta.w2solo.com/topics/380</link>
      <guid>https://beta.w2solo.com/topics/380</guid>
    </item>
    <item>
      <title>KODEV ServerLess 只为你更简单的实现业务数字化</title>
      <description>&lt;p&gt;Hi All！我是 Joshua ，来自古城西安，是一名全栈开发者，嗯…… 我同时也做过产品经理、UI/UX 设计师、项目经理和售前。&lt;/p&gt;
&lt;h3 id="发现的一些问题"&gt;发现的一些问题&lt;/h3&gt;
&lt;p&gt;正由于这种比较丰富的经历，我有一些对于软件行业的理解。19 年上半年做了个产品 &lt;a href="http://wangyesheji.cn:3002/" rel="nofollow" target="_blank" title=""&gt;IAsset&lt;/a&gt;，这是我的第一个个人独立产品，它投入了我很多精力，但同时也收获满满。&lt;/p&gt;

&lt;p&gt;另外，我也参与过很多项目，接触过很多团队，总体上我发现了几个问题：&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;很多业务系统都需要写一个基础数据管理模块，同时还要为它搭配一个前端界面，这种工作相似度很高，但都需要开发投入一些精力，虽然提高代码复用性可以在某方面提高一些效率，但感觉还可以更简单。&lt;/li&gt;
&lt;li&gt;项目中的很多软件功能都是通过数据的增删改查来实现的，很低级，导致了业内有人称：前端就是数据库界面而已。后端也只是帮忙提取一下数据而已喽。&lt;/li&gt;
&lt;li&gt;我个人经常有一些比较好的 idea， 却苦于要做出一个 mvp ，就需要至少一个后端程序员来帮我写接口。IAsset 告诉我，独立产品哪怕是雇佣关系的合作，也很难展开。但要想说服一个人与你一起，那要面临的问题将更多，这也是我们独立开发的原因。&lt;/li&gt;
&lt;li&gt;做项目经理的经验，我发现管理人真难。更何况去管理一帮高智力开发者，工作成果很难量化，KPI 制定的合理、过程的科学管控真的非常难。基于此我做了一我的第一款产品 IAsset，旨在用不灵活去抵制那些需要定制而与目标背道而驰的客户需求。但市场反馈并不尽人意，还是有很多定制化需求。&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="我的思考"&gt;我的思考&lt;/h3&gt;
&lt;p&gt;总结来看，业务系统的增删改查处理，开发重复性很高，而且也容易出错。用户需要将业务数字化，但更需要灵活配置，以适应他们大大小小的各种场景。&lt;/p&gt;

&lt;p&gt;对于上面碰到的问题，我做过一些深入思考，得出下面的一些结论：&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;我们常常要求代码开发可复用，但是大多数业务处理逻辑的代码是没法复用的，这是一款产品的核心能力，独立无二。能够被复用的就是增删改查、权限校验、安全加密这类，但现在这些东西都被框架替代完了~&lt;/li&gt;
&lt;li&gt;很多人都跟我类似，经常有一些好的想法，为了付诸实践，这些人学习了各种编程语言，然后熬了好几个通宵。这其中花费他们更多时间的可能就是一些增删改查接口开发和管理后台的开发。&lt;/li&gt;
&lt;li&gt;做项目管理时，对 Excel 又了较为深入的了解，市场份额很大，但最大的问题就是 Excel 很难在线操作，即便有类似产品但权限管控和文件存储又是新问题，即便解决了这些问题，交互也不好用。&lt;/li&gt;
&lt;/ol&gt;
&lt;h3 id="KODEV 的一些功能"&gt;KODEV 的一些功能&lt;/h3&gt;
&lt;p&gt;于是乎我开发一款产品来解决这些问题，这就是 KODEV ，意在 K.O. Development（干掉不必要的开发）的远大目标。疫情期间我完成了这款产品的从数据库设计、后端开发、界面设计和前端开发工作，终于现在可以和大家见面了。 &lt;a href="https://kodev.taiwutech.com/" rel="nofollow" target="_blank" title=""&gt;尝鲜地址》》&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src="https://i.loli.net/2020/03/04/pWyj6CamkDPgSNq.png" title="" alt="微信截图_20200304112745.png"&gt;&lt;/p&gt;

&lt;p&gt;KODEV 实现了下面的一些功能：&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;通过拖拽方式可以轻易的实现软件应用，在 KODEV 应用表中你可以实现表与表的关联。通过公式字段你可以利用系统自动计算数据。具体轻移步 &lt;a href="https://kodev.taiwutech.com/help?load=creartapp" rel="nofollow" target="_blank" title=""&gt;创建一个应用》》&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;角色、权限划分明确，操作简单。&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;应用生成的同时，也生成了数据增删改查的接口，具体请移步 &lt;a href="https://kodev.taiwutech.com/help?load=appFace" rel="nofollow" target="_blank" title=""&gt;自定义界面》》&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;img src="https://i.loli.net/2020/03/02/fkIolwy5rbGPmTN.gif" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;&lt;img src="https://i.loli.net/2020/03/02/YnCF13sAXGMdp6S.gif" title="" alt=""&gt;&lt;/p&gt;

&lt;p&gt;KODEV 不仅可以作为数据中心，还可以作为消息中心，利用 TCP 和 KODEV 链接，你可以实时获取团队数据的变更信息，使表数据的更新流程化、自动化。&lt;/p&gt;

&lt;p&gt;另外，KODEV 提供应用市场，现在我们正在整理这些应用。如果您感兴趣可以将您的业务思路，使用 KODEV 制作并邮件给我。就有机会出现在 KODEV 平台的应用市场里，对应用感兴趣的用户可以一键安装到他的团队。&lt;/p&gt;

&lt;p&gt;我理解，一些数据不能放到公有云平台上，所以 KODEV 支持私有部署，并且功能会更加强大。&lt;/p&gt;

&lt;p&gt;目前我正在为完善表字段使得应用表拥有更强大的功能，未来我将在数据使用 BI 、打印排版、移动端有更多迭代，当然这免不了大家的支持。&lt;/p&gt;

&lt;p&gt;最后送上文末福利：现在 KODEV 接受您的测试，一经澄清，我会为您送上 KODEV 平台许可证使用权扩充福利（更大的存储容量和更多的可协作成员）。&lt;/p&gt;

&lt;p&gt;&lt;a href="https://kodev.taiwutech.com/" rel="nofollow" target="_blank" title=""&gt;尝鲜地址》》&lt;/a&gt;&lt;/p&gt;</description>
      <author>joshua</author>
      <pubDate>Wed, 04 Mar 2020 12:20:08 +0800</pubDate>
      <link>https://beta.w2solo.com/topics/376</link>
      <guid>https://beta.w2solo.com/topics/376</guid>
    </item>
  </channel>
</rss>
