mirror of https://github.com/jumpserver/jumpserver
Merge branch 'cmdb' of code.simcu.com:jumpserver/jumpserver into cmdb
commit
0604f76f56
|
@ -2,6 +2,7 @@
|
||||||
from django import forms
|
from django import forms
|
||||||
|
|
||||||
from .models import IDC, Asset, AssetGroup
|
from .models import IDC, Asset, AssetGroup
|
||||||
|
from django.utils.translation import gettext_lazy as _
|
||||||
|
|
||||||
|
|
||||||
class AssetForm(forms.ModelForm):
|
class AssetForm(forms.ModelForm):
|
||||||
|
@ -15,6 +16,10 @@ class AssetForm(forms.ModelForm):
|
||||||
"number", "status", "type", "env", "sn", "is_active", "comment"
|
"number", "status", "type", "env", "sn", "is_active", "comment"
|
||||||
]
|
]
|
||||||
|
|
||||||
|
widgets = {
|
||||||
|
'groups': forms.SelectMultiple(attrs={'class': 'select2', 'data-placeholder': _('Join assetgroups')}),
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
class AssetGroupForm(forms.ModelForm):
|
class AssetGroupForm(forms.ModelForm):
|
||||||
class Meta:
|
class Meta:
|
||||||
|
|
|
@ -1,5 +1,10 @@
|
||||||
{% extends 'base.html' %}
|
{% extends 'base.html' %}
|
||||||
|
{% load static %}
|
||||||
{% load bootstrap %}
|
{% load bootstrap %}
|
||||||
|
{% block custom_head_css_js %}
|
||||||
|
<link href="{% static "css/plugins/select2/select2.min.css" %}" rel="stylesheet">
|
||||||
|
<script src="{% static "js/plugins/select2/select2.full.min.js" %}"></script>
|
||||||
|
{% endblock %}
|
||||||
{% block content %}
|
{% block content %}
|
||||||
<div class="wrapper wrapper-content animated fadeInRight">
|
<div class="wrapper wrapper-content animated fadeInRight">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
|
@ -40,12 +45,14 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="form-group" id="id_type">
|
{# <div class="form-group" id="id_type">#}
|
||||||
<label class="col-sm-2 control-label">资产类型</label>
|
{# <label class="col-sm-2 control-label">资产类型</label>#}
|
||||||
<div class="col-sm-9">
|
{# <div class="col-sm-9">#}
|
||||||
<input type="text" placeholder="" name="type" class="form-control">
|
{# <input type="text" placeholder="" name="type" class="form-control">#}
|
||||||
</div>
|
{# </div>#}
|
||||||
</div>
|
{# </div>#}
|
||||||
|
|
||||||
|
{{ form.type|bootstrap_horizontal }}
|
||||||
|
|
||||||
{{ form.comment|bootstrap_horizontal }}
|
{{ form.comment|bootstrap_horizontal }}
|
||||||
|
|
||||||
|
@ -79,7 +86,7 @@
|
||||||
<h3>所属</h3>
|
<h3>所属</h3>
|
||||||
{{ form.idc|bootstrap_horizontal }}
|
{{ form.idc|bootstrap_horizontal }}
|
||||||
|
|
||||||
{{ form.group|bootstrap_horizontal }}
|
{{ form.groups|bootstrap_horizontal }}
|
||||||
|
|
||||||
<div class="hr-line-dashed"></div>
|
<div class="hr-line-dashed"></div>
|
||||||
<h3>标签</h3>
|
<h3>标签</h3>
|
||||||
|
@ -103,85 +110,10 @@
|
||||||
</div>
|
</div>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
||||||
{% block self_footer_js %}
|
{% block custom_foot_js %}
|
||||||
{#<script>#}
|
<script>
|
||||||
{# $('document').ready(function(){#}
|
$(document).ready(function () {
|
||||||
{# var check_default = "{{ default_setting.name }}";#}
|
$('.select2').select2();
|
||||||
{# console.log(check_default);#}
|
})
|
||||||
{# if (check_default != 'default'){#}
|
</script>
|
||||||
{# $('#id_use_default_auth').attr('disabled', true);#}
|
|
||||||
{# $('#id_use_default_auth').attr('checked', false);#}
|
|
||||||
{# $('#admin_account').css('display', 'block');#}
|
|
||||||
{# } else {#}
|
|
||||||
{# $('#id_use_default_auth').click(function(){#}
|
|
||||||
{# if ($(this).is(':checked')){#}
|
|
||||||
{# $('#admin_account').css('display', 'none');#}
|
|
||||||
{# }#}
|
|
||||||
{# else {#}
|
|
||||||
{# $('#admin_account').css('display', 'block');#}
|
|
||||||
{# }#}
|
|
||||||
{# })#}
|
|
||||||
{# }#}
|
|
||||||
{##}
|
|
||||||
{# });#}
|
|
||||||
{##}
|
|
||||||
{# var required_fields = ["id_ip", "id_hostname", "id_port"];#}
|
|
||||||
{# required_fields.forEach(function(field) {#}
|
|
||||||
{# $('label[for="' + field + '"]').parent().addClass("required");#}
|
|
||||||
{# });#}
|
|
||||||
{##}
|
|
||||||
{# $('#assetForm').validator({#}
|
|
||||||
{# timely: 2,#}
|
|
||||||
{# theme: "yellow_right_effect",#}
|
|
||||||
{# rules: {#}
|
|
||||||
{# check_ip: [/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])(\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])){3}$/, 'ip地址不正确'],#}
|
|
||||||
{# check_port: [/^\d{1,5}$/, '端口号不正确'],#}
|
|
||||||
{# use_default_auth: function() {#}
|
|
||||||
{# var str1 = $("#id_use_default_auth").is(":checked");#}
|
|
||||||
{# if (str1 == true){#}
|
|
||||||
{# var decide = false;#}
|
|
||||||
{# } else {#}
|
|
||||||
{# var decide = true;#}
|
|
||||||
{# }#}
|
|
||||||
{# return decide}#}
|
|
||||||
{# },#}
|
|
||||||
{# fields: {#}
|
|
||||||
{# "ip": {#}
|
|
||||||
{# rule: "check_ip;",#}
|
|
||||||
{# tip: "输入IP",#}
|
|
||||||
{# ok: "",#}
|
|
||||||
{# msg: {required: "必须填写!"}#}
|
|
||||||
{# },#}
|
|
||||||
{# "hostname": {#}
|
|
||||||
{# rule: "required;length[0~53]",#}
|
|
||||||
{# tip: "填写主机名",#}
|
|
||||||
{# ok: "",#}
|
|
||||||
{# msg: {required: "必须填写!"}#}
|
|
||||||
{# },#}
|
|
||||||
{# "port": {#}
|
|
||||||
{# rule: "required",#}
|
|
||||||
{# tip: "输入端口号",#}
|
|
||||||
{# ok: "",#}
|
|
||||||
{# msg: {required: "必须填写!"}#}
|
|
||||||
{# },#}
|
|
||||||
{# "username": {#}
|
|
||||||
{# rule: "required(use_default_auth)",#}
|
|
||||||
{# tip: "输入用户名",#}
|
|
||||||
{# ok: "",#}
|
|
||||||
{# msg: {required: "必须填写!"}#}
|
|
||||||
{# },#}
|
|
||||||
{# "password": {#}
|
|
||||||
{# rule: "required(use_default_auth);length[0~64]",#}
|
|
||||||
{# tip: "输入密码",#}
|
|
||||||
{# ok: "",#}
|
|
||||||
{# msg: {required: "必须填写!"}#}
|
|
||||||
{# }#}
|
|
||||||
{# },#}
|
|
||||||
{# valid: function(form) {#}
|
|
||||||
{# form.submit();#}
|
|
||||||
{# }#}
|
|
||||||
{# });#}
|
|
||||||
{##}
|
|
||||||
{#</script>#}
|
|
||||||
|
|
||||||
{% endblock %}
|
{% endblock %}
|
|
@ -4,7 +4,6 @@ import views
|
||||||
# from .api import (
|
# from .api import (
|
||||||
# AssetGroupViewSet, AssetViewSet, IDCViewSet
|
# AssetGroupViewSet, AssetViewSet, IDCViewSet
|
||||||
# )
|
# )
|
||||||
import views
|
|
||||||
# from rest_framework import routers
|
# from rest_framework import routers
|
||||||
# router = routers.DefaultRouter()
|
# router = routers.DefaultRouter()
|
||||||
# router.register(r'assetgroup', AssetGroupViewSet)
|
# router.register(r'assetgroup', AssetGroupViewSet)
|
||||||
|
|
Loading…
Reference in New Issue