前端 help 助手函数

buffalo助手函数

t(): 翻译函数

locales目录下翻译文件中定义:

-id : create
    translation : "创建"
模版中使用 : t("create")

form(): 前台生成表单函数,详细

form({action:"",method:"",var:"f"}) //自动生成csrf验证隐藏表单,var默认为f 代表该表单对象名
f.InputTag({name:"",value:"",class:"",type:""}) //生成Input表单,样式属性可以自定义
f.SelectTag({name:"",option{"a":1,"b":2},value:""}) //生成Select表单,option里为select下拉选项和对应的值,value为设置默认选中项的值
f.TextArea({name:"",value:"",row:10}) //生成text文本框
f.CheckboxTag({name: "IsPublic",label:"",checked:""}) //生成复选框
f.DateTimeTag({"name": "ExpiresAt", "value": date}) //生成datetime-local框
f.HiddenTag({"name":""}) //生成隐藏表单框
f.Label("") //生成label标签
f.RadioButtonTag({name: "MyDrink",label:"Water"}) //生成单选框 
eg: <label>
  <input class=" form-control" name="MyDrink" type="radio" checked /> Water
</label>

form_for(): 生成一个绑定模型的表单,详细

form_for({model_name,actin:"",method:"",var:"f"})
标签内的参数为绑定模型的结构体的属性
eg: model_name{
    ExpiresAt time.Time
}
f.DateTimeTag("ExpiresAt") // 生成datetime-local框,自动填充model_name的name,value

paginator() : 分页函数

后端pagination变量传递
q := tx.PaginateFromParams(c.Params())
c.Set("paginator", q.Paginator)

paginator(pagination)

生成如下:
<ul class=" pagination">
   <li class="disabled"><span>«</span></li>
   <li class="active"><a href="/movements?page=1">1</a></li>
   <li><a href="/movements?page=2">2</a></li>
   <li><a href="/movements?page=3">3</a></li>
   <li><a href="/movements?page=4">4</a></li>
   <li><a href="/movements?page=5">5</a></li>
   <li class="disabled"><a>...</a></li>
   <li><a href="/movements?page=43">43</a></li>
   <li><a href="/movements?page=2">»</a></li>
</ul>

如果你正在使用框架或者正在学习,不妨加入下方的buffalo框架交流群,群内有buffalo官方的视频及中文文档,一起分享讨论技术问题,不仅限于buffalo,go

Buffalo

本作品采用《CC 协议》,转载必须注明作者和本文链接
caoayu
讨论数量: 1

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!