Example #1
0
 def get_form_layout(self):
     # 判断是否是编辑页面
     # if self.org_obj:
     self.form_layout = (
         Main(
             Fieldset('讲师信息',
                      'teacher', 'course_org',
                      css_class='unsort no_title'
                      ),
             Fieldset('基本信息',
                      'name', 'describe',
                      Row('learn_time', 'degree'),
                      Row('category', 'tag'),
                      ),
         ),
         Side(
             Fieldset('情况',
                      'students', 'fav_nums', 'click_nums',
                      ),
         ),
         Side(
             Fieldset('选择',
                     'is_class', 'is_banner',
                     ),
         )
     )
     return super(NewCouseAdmin, self).get_form_layout()
Example #2
0
class MoreActicl(object):
    list_display = ['title', 'body', 'auth']

    readonly_fields = ['detail']  # 只读字段

    exclude = ['auth']  # 不显示某个字段

    form_layout = (
        Fieldset(
            u'',
            Row('title', 'auth'),  # Row表示将里面的字段作为一行显示
            Row('classify'),
            css_class='unsort'  # 不让区块拖动
        ),
        Fieldset(
            ('正文内容'),  # Fieldset第一个参数表示区块名称
            'body',
        ),
        Fieldset(
            ('备注'),
            Row('detail'),
            css_class='unsort no_title'  # no_title是不显示区块的title名称
        ),
        TabHolder(
            Tab(
                'body-raw',
                Field('title',
                      css_class="extra"),  # css_class="extra"可以将输入框占一整行
                Field('body'),
                css_class='unsort'),
            Tab('body-json', Field('body', )),
            css_class='unsort',
        ))
Example #3
0
class smartpipeAdmin(object):
    list_display = [
        'caliber',
        'name',
        'sn',
        'label',
        'vendor_id']
    search_fields = [
        'caliber',
        'sn',
        'label',
        'vendor_id']
    list_filter = [
        'caliber',
        'sn',
        'label',
        'vendor_id']
    model_icon = 'fa fa-map'
    form_layout = (
        Main(
            Fieldset('1、基本属性',
                     'name', Row('caliber', 'sn'), Row('label', 'vendor_id')),
            Fieldset('4、安装信息',
                     'project_id', 'depth', 'install_date', 'interface', 'pipeline', 'longitude', 'latitude'),
        )
        # Side(
        #     Fieldset('其它',
        #              'buy_date', 'expire_date', 'note', 'attachment', 'date'),
        # )
    )
Example #4
0
class ControlActicl(object):
    list_display = ['title', 'body', 'auth']

    # readonly_fields = ['detail'] #设置只读字段

    # exclude = ['auth']  # 不显示某个字段
    # 传入元组
    form_layout = (
        Fieldset(('基本信息'),
                 Row('title', 'auth'),  # Row表示将里面的字段显示为一行
                 Row('classify'),
                 css_class='unsort',  # 不让区块移动
                 ),
        Fieldset(('正文内容'),  # Fieldset第一个参数表示区块名称
                 'body',
                 css_class='unsort',
                 ),
        Fieldset(('备注'),
                 Row('detail'),
                 css_class='unsort no_title',  # no_title是不显示区块的名称
                 ),
        TabHolder(
            Tab('body-row',
                Field('title', css_class='extra'),
                Field('body'),
                css_class='unsort'
                ),
            Tab('body-json',
                Field('body', ),
                ),
            css_class='unsort',
        )
    )
Example #5
0
    def get_form_layout(self):
        self.form_layout =(
            Main(
                Fieldset("讲师信息",
                         "teacher","course_org",
                          # css_class='unsort no_title'
                ),
                Fieldset("基本信息",
                         "name","desc",
                         Row("learn_times","degree"),
                         Row("category","tag"),

                ),
            ),
            Side(
                Fieldset("访问信息",
                    Row("students","fav_num","click_num")
                ),
                Fieldset("课程信息",
                    "youneed_know","teacher_tell","is_classics"
                )
            ),
            Side(
                Fieldset("封面信息",
                        "image", "notice", "is_banner","is_index"
                         )
            )
        )
        return super(CourseAdmin, self).get_form_layout()
Example #6
0
class ControlActicl(object):
    list_display = ['title', 'body', 'auth']

    #readonly_fields = ['detail']  # 只读字段

    #exclude = ['auth']  # 不显示某个字段

    form_layout = [
        Fieldset('主要信息',
                 Row('title', 'auth'),
                 Row('classify'),
                 css_class='unsort'),
        Fieldset(
            ('正文内容'),  # Fieldset第一个参数表示区块名称
            'body',
            css_class='unsort'),
        Fieldset(
            ('备注'),
            Row('detail'),
            css_class='unsort no_title'  # no_title是不显示区块的title名称
        ),
        TabHolder(
            Tab('body-raw',
                Field('title', css_class="extra"),
                Field('body'),
                css_class='unsort'),
            Tab('body-json', Field('body', )),
            css_class='unsort',
        )
    ]
Example #7
0
class CourseAdmin(object):
    list_display = ['name','time','type','level','introduction','studey_num','create_time','update_time','section','teacher']
    search_fileds = ['name','time','type','level']
    list_filter = ['name','time','type','level']

    #dj39
    form_layout = (
        Fieldset(u'',
             Row('name','time','type'),
             Row('level','studey_num','teacher'),
             #模块不可以拖动
             css_class='unsort'
         ),
        Fieldset(('描述'),
             Row('introduction'),
        ),
        Fieldset(('章节'),
             Row('section'),
             #不显示区块的title名
             css_class='unsort no_title'
        ),
        #dj41
        TabHolder(
            Tab('标签1',
                Field('name',css_class="extra"),#输入框可以占一整行
                Field('time'),
                css_class='unsort'),
            Tab('标签2',
                Field('type','level'),
                Field('teacher'),
                )
        ),
    )
Example #8
0
    def get_form_layout(self):  # 修改显示布局
        if self.org_obj:
            # 判断是否时新增,返回真则不是
            self.form_layout = (
                Main(  # 左侧显示
                    Fieldset('讲师信息',
                             'teacher', 'course_org',
                             css_class='unsort no_title'
                             ),
                    Fieldset('基本信息',
                             'name', 'desc', 'notice', 'youneed_know', 'teacher_tell', 'detail',
                             Row('learn_times', 'degree'),
                             Row('category', 'tag'),
                             ),
                    ),
                Side(  # 右侧小框显示
                    Fieldset('访问信息',
                            'click_nums', 'students', 'fav_nums'
                             ),

                    Fieldset('是否选择',
                                'is_banner', 'is_classics'
                            ),
                    ),
            )
        return super(NewCourseAdmin, self).get_form_layout()
Example #9
0
 def get_form_layout(self):
     if self.org_obj:
         self.form_layout = (Main(
             Fieldset("讲师信息",
                      'teacher',
                      'course_org',
                      css_class='unsort no_title'),
             Fieldset(
                 "基本信息",
                 'name',
                 'desc',
                 Row('learn_times', 'degree'),
                 Row('category', 'tag'),
                 'youneed_know',
                 'teacher_tell',
                 'detail',
             ),
         ),
                             Side(
                                 Fieldset("访问信息", 'fav_nums', 'click_nums',
                                          'students', 'add_time'), ),
                             Side(
                                 Fieldset("选择信息", 'is_banner',
                                          'is_classics'), ))
     return super(NewCourseAdmin, self).get_form_layout()
Example #10
0
class ChargingGunInline(object):
    """
    枪口信息
    """
    model = ChargingGun
    extra = 1
    # exclude = ['out_trade_no']
    style = "accordion"
    # readonly_fields = ['qrcode']
    form_layout = (
        Fieldset(
            '枪口信息',
            Row('gun_num', 'charg_status'),
            Row('gun_type', 'nationalstandard'),
            Row(
                AppendedText('voltage_upper_limits', 'V'),
                AppendedText('voltage_lower_limits', 'V'),
            ),
            Row(
                AppendedText('current', 'A'),
                AppendedText('power', 'KW'),
            ),
            Row('work_status', None),
            Row('cc_status', 'cp_status'),
            Row('gun_temp_status', 'elec_lock_status'),
            Row('relay_status', 'fuse_status'),
            Row('gun_temp', 'cab_temp'),
        ),
        Fieldset(
            '其他信息',
            Row('subscribe_min', 'qrcode'),
        ),

    )
Example #11
0
    def get_form_layout(self):
        if self.org_obj:
            # 只有在修改页面才变
            self.form_layout = (
                Main(
                    # Fieldset表示一块
                    Fieldset('讲师信息',
                             'teacher', 'course_org',
                             css_class='unsort no_title'
                             ),
                    Fieldset('基本信息'),
                    'name', 'desc',
                    Row('learn_times', 'degree'),
                    Row('category', 'tag'),
                    'you_need_know', 'teacher_tell', 'detail',
                ),

                # Side(
                #     # 右侧的信息
                #     Fieldset('访问信息'),
                #     'fav_nums', 'click_nums', 'students', 'add_times'
                # ),
                Side(
                    # 右侧的信息
                    Fieldset('选择信息'),
                    'is_classics', 'is_banner', 'image'
                ),
            )
        return super(NewCourseAdmin, self).get_form_layout()
Example #12
0
class AuthorBlogAdmin(CommonSetting):
    exclude = ('id', 'author')
    list_display = ('title', 'cat', 'is_active', 'original', 'tags', 'read',
                    'like', 'url')
    search_fields = ('title', )
    list_filter = ('add', 'mod')
    readonly_fields = ('read', 'like', 'add', 'mod', 'is_active', 'is_top',
                       'is_fine', "apply_active", "apply_top", "apply_fine")
    form_layout = (Main(
        Fieldset(_('基本信息'), Row('title', 'cat'), Row('cover', 'tags'),
                 Row('music')),
        Fieldset(_('标记信息'), Row('apply_active', ), Row('apply_top', ),
                 Row('apply_fine')),
        Fieldset(
            _('正文'),
            Row('source'),
            Row('content'),
        ),
        Fieldset(
            _('统计信息'),
            Row('read', 'like'),
            Row('add', 'mod'),
        ),
    ), Side(Fieldset(_('状态'), 'is_active', 'is_top', 'is_fine')))

    def queryset(self):
        q = super().queryset()
        return q.filter(author_id=self.request.user.id)

    def save_models(self):
        """
        01.保存数据到数据库中时提取作者为当前用户
        02.修复代码块bug
        """
        if (not hasattr(self.new_obj, 'author')) or (not self.new_obj.author):
            self.new_obj.author = self.request.user
        self.new_obj.save()

    def has_add_permission(self):
        # 写文章的权限
        if self.request.user.is_superuser:
            return True
        return self.request.user.is_active

    def has_delete_permission(self, obj=None):
        # 删除权限
        if obj is not None:
            if self.request.user.is_superuser:
                return True
            if self.request.user.id == obj.author.id:
                return True
        return False

    def has_change_permission(self, obj=None):
        if obj is not None:
            if self.request.user.is_superuser:
                return True
            if self.request.user.id == obj.author.id:
                return True
        return False
Example #13
0
class CityAdmin(object):

    list_display = ('name',
                    'status', 'desc', 'cover')

    list_display_links = ['name',]  # 在展示的字段上 添加的超链接

    list_filter = ['create_time', 'name']  # 过滤字段

    search_fields = ['name',]  # 检索的字段

    form_layout = (
        Fieldset(
            '城市',
            Row('name', 'status', ),
            Row('cover', 'province',),
            Row('desc'),

        ),
    )

    def operator(self, obj):
        """
        :param obj: 当前对象
        """
        return format_html(
            '<a href="{}">编辑</a>',
            reverse('xadmin:travel_province_change', args=(obj.id,))
        )

    operator.short_description = '操作'
Example #14
0
 def get_form_layout(self):
     if self.org_obj:
         self.form_layout = (
             Main(
                 Fieldset('',
                          'username', 'password',
                          css_class='unsort no_title'
                          ),
                 Fieldset(_('Personal info'),
                          Row('level', 'credit'),
                          Row('sex', 'email'),
                          Row('phone', ),
                          'address',
                          'signature',
                          ),
                 Fieldset(_('Important dates'),
                          'last_login', 'date_joined'
                          ),
             ),
             Side(
                 Fieldset(_('Status'),
                          'is_active', 'is_staff', 'is_superuser',
                          ),
             )
         )
     return super(UserAdmin, self).get_form_layout()
Example #15
0
 def get_form_layout(self):
     if self.org_obj:
         self.form_layout = (Main(
             Fieldset('',
                      'username',
                      'password',
                      css_class='unsort no_title'),
             Fieldset(_('Personal info'),
                      Row('zh_name', 'user_id'),
                      Row(
                          'email',
                          'home_page',
                      ),
                      css_class='unsort'),
             Fieldset(_('Permissions'),
                      'groups',
                      'user_permissions',
                      css_class='unsort'),
             Fieldset(_('Important dates'),
                      'last_login',
                      'date_joined',
                      css_class='unsort'),
         ),
                             Side(Fieldset(
                                 _('Status'),
                                 'is_active',
                                 'is_staff',
                                 'is_pwd_login',
                                 'is_superuser',
                             ),
                                  css_class='unsort'))
     return super(UserAdmin, self).get_form_layout()
Example #16
0
class UserProfileAdmin(object):
    list_display = ('username', 'email', 'is_staff', 'mobile', 'number',
                    'gender', 'birthday')
    search_fields = ('number', 'email', 'username', 'mobile')
    list_filter = ('is_staff', )
    model_icon = 'fa fa-user-o'
    readonly_fields = ('follow_nums', 'fan_nums', 'upload_nums', 'like_nums',
                       'collection_nums', 'download_nums', 'add_time',
                       'password')
    relfield_style = 'fk-ajax'
    form_layout = (Main(
        Fieldset('', 'username', 'password', css_class='unsort no_title'),
        Fieldset(
            '关键信息',
            Row('real_name', 'p_class'),
            Row('email', 'mobile'),
            Row('qq', 'id_card'),
        ),
        Fieldset('权限', 'groups', 'user_permissions'),
        Fieldset('日期', 'last_login', 'date_joined'),
    ),
                   Side(
                       Fieldset('状态', 'is_active', 'is_staff', 'is_superuser',
                                'if_sign'), ))

    def get_readonly_fields(self):
        if self.user.is_superuser:
            self.readonly_fields = []
        return self.readonly_fields
Example #17
0
class WrokOrdersAdmin(object):
    list_display = ['org_user', 'pro_type','pro_date','is_finish']
    search_fields = []
    readonly_fields = ['creator']
    list_filter =  ['creator','is_finish','is_key_work','create_time','modified_time']
    exclude = ['org_dept']
    reversion_enable = True
    form_layout = (
        Main(
            Fieldset('',
                     Row('creator','org_user'),
                     Row('pro_type', 'pro_date'),
                     Row('pro_desc'),
                     Row('solver', 'solve_len_time'),
                     Row('solve_desc'),
                     ),
        ),
        Side(
            Fieldset(('Status'),
                     'is_finish','is_key_work',
                     ),
        )
    )
    def save_models(self):
        obj = self.new_obj
        request = self.request
        obj.creator = str(request.user.username)
        obj.save()
Example #18
0
 def get_form_layout(self):
     self.form_layout = (Main(
         Fieldset('讲师信息',
                  'teacher',
                  'course_org',
                  css_class='unsort no_title'),
         Fieldset(
             '基本信息',
             'name',
             'desc',
             Row('degree', 'learn_times'),
             Row('category', 'tags'),
             'notice',
             'teacher_tell',
             'detail',
         ),
     ),
                         Side(
                             Fieldset(
                                 '访问信息',
                                 'fav_nums',
                                 'click_nums',
                                 'students',
                                 'add_time',
                             ), ),
                         Side(
                             Fieldset(
                                 '选择信息',
                                 'is_banner',
                                 'is_classics',
                             ), ))
     return super(CoursesAdmin, self).get_form_layout()
Example #19
0
class NoticeAdmin(CommonSetting):
    list_display = ('title', 'is_active', 'add', 'url')
    search_fields = ('title', )
    list_filter = ('add', 'mod', 'is_active')
    readonly_fields = ('add', 'mod')
    form_layout = (Main(
        Fieldset(_('公告信息'), Row('title'), Row('add', 'mod'),
                 Row('content')), ), Side(Fieldset(_('状态'), 'is_active')))
Example #20
0
class LinkAdmin(CommonSetting):
    list_display = ('link_name', 'is_active', 'cat', 'url')
    search_fields = ('link_name', 'email', 'link')
    list_filter = ('cat', 'is_active')
    readonly_fields = ('add', 'mod')
    form_layout = (Main(
        Fieldset(_('链接信息'), Row('link_name', 'cat'), Row('link', 'email'),
                 Row('add', 'mod')), ), Side(Fieldset(_('状态'), 'is_active'), ))
Example #21
0
class AdvertisementAdmin(CommonSetting):
    list_display = ('ad_name', 'adtype', 'url', 'end')
    search_fields = ('ad_name', 'remark')
    list_filter = ('add', 'mod', 'end', "adtype")
    readonly_fields = ('add', 'mod')
    form_layout = (Main(
        Fieldset(_('广告信息'), Row('ad_name', 'add', 'end'), Row('link', 'mod'),
                 Row('image', 'adtype')), ), Side(Fieldset(_('备注'), 'remark')))
Example #22
0
class ProfileInline(object):
    model = UserProfile
    form_layout = (
        Row('department', 'name'),
        Row('tel', 'email'),
        Row('status', 'entry_date'),
    )
    max_num = 1
    can_delete = False
Example #23
0
class CategoryAdmin(CommonSetting):
    list_display = ('pre_cat', 'cat', 'is_active', 'art_nums', 'add', 'mod')
    search_fields = ('cat', 'pre_cat')
    list_filter = ('add', 'mod', 'is_active')
    readonly_fields = ('add', 'mod')
    form_layout = (
        Main(Fieldset(_('类别信息'), Row('pre_cat', 'cat'), Row('add', 'mod')), ),
        Side(Fieldset(_('状态'), 'is_active'), ),
    )
Example #24
0
class ExpandAdmin(CommonSetting):
    list_display = ('key', 'value', "mod")
    search_fields = ('remark', 'key')
    list_filter = ('mod', )
    ordering = ('-mod', )
    readonly_fields = ('mod', )
    form_layout = (Main(
        Fieldset(_('数据记录'), Row('key'), Row('value'),
                 Row('mod'))), Side(Fieldset(_('备注'), 'remark')))
Example #25
0
class HostAdmin(object):
    def open_web(self, instance):
        return "<a href='http://%s' target='_blank'>Open</a>" % instance.ip
    open_web.short_description = "Acts"
    open_web.allow_tags = True
    open_web.is_column = True

    list_display = ('name', 'idc', 'guarantee_date', 'service_type',
                    'status', 'open_web', 'description')
    list_display_links = ('name',)

    raw_id_fields = ('idc',)
    style_fields = {'system': "radio-inline"}

    search_fields = ['name', 'ip', 'description']
    list_filter = ['idc', 'guarantee_date', 'status', 'brand', 'model',
                   'cpu', 'core_num', 'hard_disk', 'memory', 'service_type']

    list_bookmarks = [{'title': "Need Guarantee", 'query': {'status__exact': 2}, 'order': ('-guarantee_date',), 'cols': ('brand', 'guarantee_date', 'service_type')}]

    show_detail_fields = ('idc',)
    list_editable = (
        'name', 'idc', 'guarantee_date', 'service_type', 'description')
    save_as = True

    aggregate_fields = {"guarantee_date": "min"}

    form_layout = (
        Main(
            TabHolder(
                Tab('Comm Fiels',
                    Fieldset('Company data',
                             'name', 'idc',
                             description="some comm fields, required"
                             ),
                    Inline(MaintainLog),
                    ),
                Tab('Extend Fiedls',
                    Fieldset('Contact details',
                             'service_type',
                             Row('brand', 'model'),
                             Row('cpu', 'core_num'),
                             Row(AppendedText(
                                 'hard_disk', 'G'), AppendedText('memory', "G")),
                             'guarantee_date'
                             ),
                    ),
            ),
        ),
        Side(
            Fieldset('Status data',
                     'status', 'ssh_port', 'ip'
                     ),
        )
    )
    inlines = [MaintainInline]
    reversion_enable = True
Example #26
0
class ScanTaskAdmin(object):
    def queryset(self):
        qs = super(ScanTaskAdmin, self).queryset()
        if self.request.user.username in PREVILEGED_USER_SETS:
            return qs
        else:
            return qs.filter(workspace__user=self.request.user)

    list_display = (
        'targets',
        "ports",
        "imports_active",
        "scan_scheme",
        "date_created",
    )
    # list_display = ('targets', "ports", "scan_scheme", "date_created", schedule)
    list_editable = ['imports_active', 'workspace']

    fieldsets = [
        # ("基本描述", {'fields': ['type', "name", "desc"] }),
        ('工作组', {
            'fields': ['workspace']
        }),
        ('文件导入', {
            'fields': ['imports_active', 'imports']
        }),
        ('自定义目标', {
            'fields': ['targets', "ports", "udp", "domains"]
        }),
        ('选定扫描方案', {
            'fields': ['scan_scheme']
        }),
        ('执行类型', {
            'fields': ['atnow', "regular", "interval", "crontab"]
        }),
    ]

    # wizard_form_list = fieldsets

    # inlines = [WorkspaceInline, ]

    form_layout = (Main(
        TabHolder(
            Tab(
                "文件添加扫描",
                Fieldset(
                    "基础扫描设置",
                    "workspace",
                    "scan_scheme",
                    Row("imports_active", "imports"),
                    Row("atnow", "regular"),
                ),
            ), ), ),
                   Side(
                       Fieldset("自定义目标", 'targets', "ports", "udp",
                                "domains"), ))
Example #27
0
class NodeBranchInline(object):
    model = NodeBranch
    form_layout = (
        Row('name', 'handler_type'),
        Row('handler_user', 'handler_role'),
        Row('handler_department', 'handler_position'),
        Row('branch_condition', 'branch_field'),
    )
    extra = 1
    style = 'accordion'
Example #28
0
class ModalAdmin(object):
    inlines = [NodeInline]
    list_display = ['name', 'app_name', 'model_name']
    readonly_fields = ['app_name', 'model_name']
    raw_id_fields = ['content_type']
    form_layout = (
        Row('name', 'content_type'),
        Row('app_name', 'model_name'),
        Row('description'),
    )
Example #29
0
class CprkXadmin(object):
    list_display = ['cpph', 'cpid', 'cpmc', 'bz', 'rkczy']
    search_fields = ['cpph', 'cpid']
    form_layout = (Fieldset(
        '',
        Row('cpph', 'cpid'),
        Row('cpmc', 'rkdate'),
        Row('rksl', 'bz'),
        Row('rkczy', 'rklxid'),
    ), )
Example #30
0
class YlinfoXadmin(object):
    # 设置要显示在列表中的字段
    list_display = [
        'ylid', 'ylname', 'minsl', 'maxsl', 'zf', 'stockid', 'bz', 'ylzt'
    ]
    # 列表页搜索框可用于模糊匹配的字段
    search_fields = ['ylid', 'ylname']
    # 设置每页显示多少条记录,默认是100条
    list_per_page = 10
    # 设置表单输入框一行并排几个
    form_layout = (
        Fieldset(
            '',
            Row('ylid', 'ylname'),
            Row('dw', 'piedw'),
            Row('zbq', 'goodzbq'),
            Row('minsl', 'maxsl'),
            Row('park', 'pieprice'),
            Row('tymc', 'ysbz'),
            # Row('maxsl', 'zf'),
            Row('stockid', 'zf'),
            Row('barcode', 'bz'),
            Row('ylzt'),
            css_class='unsort no_title'), )
    # 添加页面使用的模板 默认为 xadmin/views/model_form.html
    add_form_template = 'bc_rmaterial/rmaterial_add.html'
    # 修改页面使用的模板 默认为 xadmin/views/model_form.html
    change_form_template = 'bc_rmaterial/rmaterial_update.html'