[ English | 中文 (简体, 中国) | русский | português (Brasil) | नेपाली | 한국어 (대한민국) | Indonesia | français | español | esperanto | English (United Kingdom) | Deutsch ]

Modul Horizon

Horizon memuat satu titik kontak untuk terhubung ke proyek Anda jika Anda tidak mengembangkan kelas Anda sendiri Dashboard or Panel:

import horizon

Dari sana Anda dapat mengakses semua metode utama yang Anda butuhkan.

Horizon

horizon.urls

URLconf yang dibuat secara otomatis untuk horizon. Usage:

url(r'', include(horizon.urls)),
horizon.register(dashboard)

Mendaftar :class: ~ horizon.Dashboard dengan Horizon.

horizon.unregister(dashboard)

Batalkan pendaftaran Dashboard dari Horizon.

horizon.get_absolute_url()

Mengembalikan URL default untuk Horizon's URLconf.

URL default ditentukan dengan memanggil :meth: ~ horizon.Dashboard.get_absolute_url pada :class:` ~ horizon.Dashboard` instance dikembalikan oleh :meth: ~horizon.get_default_dashboard.

horizon.get_user_home(user)

Mengembalikan URL default untuk pengguna tertentu.

Metode ini dapat digunakan untuk menyesuaikan tempat pengguna dikirim ketika mereka masuk, dll. Secara default, ini mengembalikan nilai :meth: get_absolute_url.

Fungsi alternatif dapat diberikan untuk menyesuaikan perilaku ini dengan menetapkan URL atau fungsi yang mengembalikan URL melalui tombol `` "user_home" `` dalam HORIZON_CONFIG. Masing-masing ini akan valid

{"user_home": "/home",}  # A URL
{"user_home": "my_module.get_user_home",}  # Path to a function
{"user_home": lambda user: "/" + user.name,}  # A function
{"user_home": None,}  # Will always return the default dashboard

Ini dapat berguna jika dasbor default mungkin tidak dapat diakses oleh semua pengguna. Ketika user_home hilang dari HORIZON_CONFIG, itu akan menjadi nilai default setting.LOGIN_REDIRECT_URL.

horizon.get_dashboard(dashboard)

Mengembalikan instance Dashboard yang ditentukan.

horizon.get_default_dashboard()

Mengembalikan default instance :class: ~ horizon.Dashboard.

Jika `` "default_dashboard" `` ditentukan dalam HORIZON_CONFIG maka dasbor itu akan dikembalikan. Jika tidak, dasbor pertama dikembalikan oleh get_dashboards() akan dikembalikan.

horizon.get_dashboards()

Mengembalikan tuple yang dipesan modul Dashboard`.

Dasbor pesanan sesuai dengan tombol `` "dasbor" `` di HORIZON_CONFIG atau mengembalikan semua dasbor terdaftar dalam urutan abjad.

Sisa: kelas Dashboard terdaftar dengan Horizon tetapi tidak terdaftar di ``HORIZON_CONFIG ['dasbor']` `akan ditambahkan ke bagian akhir daftar menurut abjad.

Dashboard

class horizon.Dashboard(*args, **kwargs)[sumber]

Kelas dasar untuk mendefinisikan dasbor Horizon.

Semua dasbor Horizon harus diperluas dari kelas dasar ini. Ini menyediakan kait yang sesuai untuk penemuan otomatis Panel modules, secara otomatis membangun URLconfs, dan menyediakan kontrol akses berbasis izin.

name

Nama dasbor. Ini akan ditampilkan di navigasi otomatis dan berbagai tempat lainnya. Default: ''.

slug

A unique "short name" for the dashboard. The slug is used as a component of the URL path for the dashboard. Default: ''.

panels

Atribut panels dapat berupa daftar datar yang berisi nama setiap panel **modul ** yang seharusnya dimuat sebagai bagian dari dasbor ini, atau daftar kelas PanelGroup yang mendefinisikan kelompok panel seperti pada contoh berikut

class SystemPanels(horizon.PanelGroup):
    slug = "syspanel"
    name = _("System")
    panels = ('overview', 'instances', ...)

class Syspanel(horizon.Dashboard):
    panels = (SystemPanels,)

Navigasi yang dibuat secara otomatis akan menggunakan urutan modul dalam atribut ini.

Default: [].

Peringatan

Nilai untuk atribut ini seharusnya tidak sesuai dengan atribut :attr: ~ .Panel.name dari kelas Panel. Mereka harus menjadi nama-nama modul Python di mana panel.py file hidup. Ini digunakan untuk pemuatan otomatis dan registrasi kelas Panel seperti mesin Django's ModelAdmin.

Modul panel harus terdaftar dalam panel agar dapat ditemukan oleh mekanisme registrasi otomatis.

default_panel

Nama panel yang seharusnya diperlakukan sebagai panel default untuk dasbor, yaitu ketika Anda mengunjungi URL root untuk dasbor ini, itulah panel yang ditampilkan. Default: None.

permissions

Daftar nama izin, yang semuanya harus dimiliki pengguna untuk mengakses panel apa pun yang terdaftar dengan dasbor ini. Atribut ini digabungkan secara kumulatif dengan izin yang diperlukan pada individu kelas Panel.

urls

Jalur opsional ke URLconf dari tampilan tambahan untuk dasbor ini yang tidak terhubung ke panel tertentu. Default: None.

nav

Atribut nav dapat berupa nilai boolean atau callable yang menerima objek RequestContext sebagai argumen tunggal untuk mengontrol apakah dasbor ini akan muncul di navigasi yang dihasilkan secara otomatis. Default: True.

public

Nilai Boolean untuk menentukan apakah dasbor ini dapat dilihat tanpa login. Default ke False.

allowed(context)[sumber]

Memeriksa akses berbasis peran untuk dasbor ini.

Memeriksa akses ke panel apa pun di dasbor dan dasbor itu sendiri.

Metode ini harus ditimpa untuk mengembalikan hasil pemeriksaan kebijakan yang diperlukan bagi pengguna untuk mengakses dasbor ini ketika diperlukan pemeriksaan yang lebih rumit.

get_absolute_url()[sumber]

Mengembalikan URL default untuk dasbor ini.

URL default didefinisikan sebagai pola URL dengan ``name = "index" `` di URLconf untuk Panel ditentukan oleh :attr:` ~ horizon.Dashboard.default_panel`.

get_panel(panel)[sumber]

Mengembalikan instance Panel yang terdaftar dengan dasbor ini.

get_panel_group(slug)[sumber]

Mengembalikan :class:~horizon.PanelGroup yang ditentukan.

Mengembalikan None jika tidak terdaftar.

get_panels()[sumber]

Mengembalikan instance Panel yang terdaftar dengan dasbor ini secara berurutan.

Informasi pengelompokan panel tidak termasuk.

classmethod register(panel)[sumber]

Mendaftar :class: ~ horizon.Panel dengan dasbor ini.

classmethod unregister(panel)[sumber]

Batalkan pendaftaran Panel dari dasbor ini.

Panel

class horizon.Panel[sumber]

Kelas dasar untuk mendefinisikan panel dasbor Horizon.

Semua panel dashboard Horizon harus diperluas dari kelas ini. Ini menyediakan kait yang sesuai untuk secara otomatis membangun URLconfs, dan menyediakan kontrol akses berbasis izin.

name

Nama panelnya. Ini akan ditampilkan di navigasi otomatis dan berbagai tempat lainnya. Default: `` '' ``.

slug

"short name" unik untuk panel. Slug digunakan sebagai komponen jalur URL untuk panel. Default: ''.

permissions

Daftar nama izin, yang semuanya harus dimiliki pengguna untuk mengakses tampilan apa pun yang terkait dengan panel ini. Atribut ini digabungkan secara kumulatif dengan izin yang diperlukan pada kelas Dashboard yang terdaftar.

urls

Path ke URLconf views untuk panel ini menggunakan notasi dotted Python. Jika tidak ada nilai yang ditentukan, file yang disebut urls.py tinggal di paket yang sama dengan file panel.py yang digunakan. Default: None.

nav

Atribut nav dapat berupa nilai boolean atau callable yang menerima objek RequestContext sebagai argumen tunggal untuk mengontrol apakah panel ini akan muncul di navigasi yang dihasilkan secara otomatis. Default: True.

index_url_name

Argumen name untuk pola URL yang sesuai dengan tampilan indeks untuk Panel ini. Ini adalah pandangan bahwa Panel.get_absolute_url() akan mencoba untuk mundur.

static can_register()

Metode statis opsional ini dapat digunakan untuk menentukan kondisi yang perlu dipenuhi untuk memuat panel ini. Tidak seperti permissions dan allowed metode ini dimaksudkan untuk menangani kondisi berbasis pengaturan daripada permission dan pemeriksaan kebijakan berbasis pengguna. Nilai kembaliannya adalah boolean. Jika metode mengembalikan True, maka panel akan didaftarkan dan tersedia untuk pengguna (jika pemeriksaan runtime permissions dan allowed juga dipenuhi). Jika metode mengembalikan False, maka panel tidak akan terdaftar dan tidak akan tersedia melalui navigasi normal atau akses URL langsung.

get_absolute_url()[sumber]

Mengembalikan URL default untuk panel ini.

URL default didefinisikan sebagai pola URL dengan ``name = "index" `` di URLconf untuk panel ini.

Panel Group

class horizon.PanelGroup(dashboard, slug=None, name=None, panels=None)[sumber]

Sebuah kontainer untuk satu set kelas Panel.

Ketika iterasi, ia akan menghasilkan masing masing instance Panel yang dikandungnya.

slug

String unik untuk mengidentifikasi grup panel ini. Wajib.

name

Nama yang mudah digunakan yang akan digunakan sebagai judul grup di tempat-tempat seperti navigasi. Default: None.

panels

Daftar nama modul panel yang harus ada dalam pengelompokan ini.