1.模型管理>编辑页>模板下拉框原版本不显示数据问题:返回的不是json数据。(官方尚未发现修复)
return $result = ['total' => count($files), 'list' => $files];//原来问题代码
return json($result = ['total' => count($files), 'list' => $files]);//修改成功代码
1.1.管理栏目>跳转链接选择列表数据格式错误。方法同上。
// return [ // 'rows' => array_values($rows), // 'rows' => $rows, // 'total' => count($rows) // ]; return json($result = [ 'rows' => array_values($rows), 'rows' => $rows, 'total' => count($rows) ]);
原因:官方修改过数据源未整合至新版本。
解:修改public/assets/js/backend/cms/comment.js,将url改为source.url,下个版本会修复此问题。
自定义表单组件无法绑定问题:无法加载数据源等。
原因:fast.js中出现Layer.config配置错误信息。
解:去除该段代码执行即可。
// Layer.config({ // skin: 'layui-layer-fast' // });
因为FastAdmin是使用requirejs来管理第三方插件的JS加载,如果你想在前端仍然使用同后台相同的加载方式,首先请务必在视图中添加
<script type="text/javascript">
var require = {
config: {$config|json_encode}
};
</script>
这个配置包含了路径、版本配置等信息,必须存在。
请参考默认的diyform.html,顶部有段代码:
<script type="text/javascript">
var require = {
config: {$jsconfig|json_encode}
};
</script>
必须要有这段代码
其次如果你要使用layui.js,首先必须按照requirejs的加载方式加载,而不能直接在视图中直接写script引入,直接视图中引入是错误的做法。貌似layui.js有它自己的一套加载流程,FastAdmin未测试过它与requirejs的兼容性,请自行进行兼容性测试
后来发现选择图片按钮有错误,初步确定和上述问题类似,Layer为未知。1.于是在fast.js头部定义“var Layer = layer;”,问题解决了。上述去除操作可以忽略。(官方尚未未修复)
var Layer = layer;//弹层
2.layout.html 中的“{__SCRIPT__}”,注意前后需要空行才生效。
4.TAG表中,方便TAG栏目模型调用,我添加栏目ID和模型ID,需要带上这两个参数,app\admin\model\cms\Archives.php中修改了
\addons\cms\model\Tag::refresh($row['tags'], $row['id'], $row['channel_id'], isset($row['model_id'])?$row['model_id']:$channel['model_id']);5.模型搜索不可用,admin后台对应Modelx控制器,新增两行代码即可。
use addons\cms\library\FulltextSearch;
//另一处代码
protected $searchFields = 'id,name,table';
1.用户发布文章编辑器“选择”功能报错。
原因:如果是前台用户,则无法使用选择图片功能,因为这个选择功能只在后台使用。
2.CMS路由和FAST框架路由不兼容,官方也无法完美解决。官方解释CMS只能二级域名,并不能多域名相互共享框架路由。
目前我的解决方案是,要同时使用CMS合fastadmin框架以及其他模块功能的优势。最大问题就是两个index有冲突。时不时会出现多次重定向而服务器PHP语言环境崩溃。问题不是很大。目前能用,要使用的功能基本不影响。
1.CSM会议室预约>config.php>value报错问题:导致FAST插件管理报错。
原因:value中存在系统变量。解:去除即可。
CDN设置
1、CMS后台设置会写入/application/extra/site.php “'cdnurl' => 'http://oss.iouyeah.com',”
2、fastadmin框架也需要手动设置/application/config.php “'__CDN__' => 'http://oss.iouyeah.com',”
1.3升级
问题1,前台无法打开原因(已解决)(作者新版已删除)
1./vendor/karsonzhang/fastadmin-addons/src/addons/Route.php注释掉这一段
//throw new HttpResponseException(new Response('',sprintf("%d1", 40)));
2./vendor/karsonzhang/fastadmin-addons/src/common.php注释掉这一段// 闭包插件初始化行为 Hook::add('addon_module_init', function ($request) { $prop = 'author'; $code = 400; $prop .= 'ized'; if (!$request->{$prop}) { throw new HttpResponseException(new Response('', ++$code)); } });
问题2,插件市场无法打开
作者升级了插件市场,需要替换掉更新vendor\karsonzhang文件夹文件
问题3,无法上传,上传错误
必须设置为服务器中转才可以
thinkphp5.0不支持PJAX,需要手动设置
fastadmin1.3新版缺失文件(手动已解决。CMS里有,复制到外面全局JS文件夹)
jquery-autocomplete.js
jquery-colorpicker.js
jquery-tagsinput.js
自定义TAG标签要绑定控件的(tagsinput分fastadmin和CMS两种,fastadmin有字段tag、tags识别和属性绑定;CMS在archives.js中绑定)
在frontend/archives.js中复制#c-tags修改
自定义字段和自定义表单建议使用,1.优先字段带tag,2.其他不明确的字段使用属性扩展,3.最后才使用前端脚本绑定。
1.3.4 版本删除了手动添加的#c-tags复制出来的代码
移除本地JS需要注意的
清除缓存的addons.js需要在本地才能清除成功,否则无法清除。
地图位置(经纬度)选择插件
一直无法弹出选择窗。很早的旧版本没有BUG
数据库管理
1.数据库名带有下划线 , 需要修改正则添加下划线
\application\admin\controller\general\Database.php
if (!preg_match("/^backup\-([a-z0-9\-]+)\.zip$/i", $file)) {
改为
if (!preg_match("/^backup\-([a-z0-9_\-]+)\.zip$/i", $file)) {
2.备份移除只支持post提交内容管理文档标题 去除了 页面前端验证,data-rule中的required;length(~100, true)
/application/admin/model/cms/Archives.php getStatusList()方法 添加 Private
public function getStatusList() { return ['normal' => __('Status Normal'), 'hidden' => __('Status Hidden'), 'rejected' => __('Status rejected'), 'pulloff' => __('Status pulloff'), 'private' => __('Private')]; }
lang文件添加Private
1.3.4版本升级
1.(admin>cms>view自定义字段无法加载判断问题)提交表单字段被新版JS隐藏 需要删除add.html edit.html 中的多个例如:data-field="title"
2.sitemap.php 中把所有$this->xml() 修改为 xml,否则报错
3.裁剪目前只支持本地服务器图片,阿里云OSS会出现找不到改文件的404页面。
CMS 列表数据加载后分页不显示问题。
解:缓存列表页总数,选择“关闭”。
或者在Channel.php“缓存列表总数”中,与查询一样,加入where私密判断条件。
// ->where('a.status', 'normal')
->where($map)
flag显示数据不全,是因为无法模糊查询,在Service.php中修改成模糊查询即可。
// $query->whereOr($field, $subitem);
$query->whereOr($field,'like',"%$subitem%");
内容管理是默认内容出现:未知的数据格式!
其实是页面设置ALL显示,数据超出了JS内存,手动设置10条显示即可解决。
模板文件不存在:,路径没问题却说不存在?
检查你的模版文件有没有引用其他文件,例如
<div id="extend2">
{include file="cms/archives/fields"/}
</div>
再来一条
9999
333
123
二公司
123
1234
123
测试1