会员投稿
模板:
user/article-add.html
这个页面可以自己定义投稿模型,表单也可以后台制定。
自定义模型发布
ishome
: 前台是否允许发布,在模型修改里面可以看见这个设置,当ishome=1
的时候,前台允许发布。
{loop table="molds" ishome="1" isopen="1" orderby="id asc" as="v"}
<option value="{$v['biaoshi']}" {if($molds==$v['biaoshi'])}selected{/if}>{$v['name']}</option>
{/loop}
栏目选项
一般切换模型的时候,就会请求一次对应模型的栏目,栏目显示可以在栏目列表,编辑栏目里面
发布显示
这里设置显示
,则前台会显示这个栏目
function getclass(molds){
$.post("{fun U('user/getclass')}",{molds:molds},function(res){
if(res.code==0){
{if($data)}
var id = {$data['id']};
{else}
var id = 0;
{/if}
var tid = {$tid};
var html = '';
for(var i=0;i<res['data'].length;i++){
var classname = '';
for(var j=1;j<=res['data'][i]['level'];j++){
classname += '--';
}
classname += res['data'][i]['classname'];
if(tid==res['data'][i]['id']){
html+='<option value="'+res['data'][i]['id']+'" selected>'+classname+'</option>';
}else{
html+='<option value="'+res['data'][i]['id']+'" >'+classname+'</option>';
}
}
$("#tid").html(html);
get_fields(tid,id)
}
},'json');
}
//切换栏目或者刚进入页面的时候加载栏目
$(document).ready(function(){
getclass($('#molds').val());
$("#molds").change(function () {
var molds = $('#molds').val();
if(molds==''){
return false;
}
getclass(molds)
});
});
获取前台表单
前台表单字段可以在
模型列表
-字段列表
里面进行设置前台表单
,开启这个开关,那么前台就会显示。
function get_fields(tid,id){
var id = arguments[1]?arguments[1]:0;
$.post("{fun U('common/get_fields')}",{molds:$("#molds").val(),tid:tid,id:id},function(res){
if(res.code==0){
//默认 res.tpl输出的是layui的模板HTML,可以审核元素查看res里面的内容
//$("#ext_fields").html(res.tpl);
var html = '';
var len = res.fields_list.length;
if(len>0){
//根据对应的字段,进行HTML设计
for(var i=0;i<len;i++){
}
}
$("#fields_ext").html(res.tpl);
}
},'json');
}
//切换栏目就获取一次字段,因为每个字段都会绑定栏目,不同的栏目显示不同的字段
$(document).ready(function(){
$("#tid").change(function () {
{if($data)}
var id = {$data['id']};
{else}
var id = 0;
{/if}
var tid = $("#tid").val();
get_fields(tid,id)
});
});