[ 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.
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_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 olehget_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 kelasPanelGroup
yang mendefinisikan kelompok panel seperti pada contoh berikutclass 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 manapanel.py
file hidup. Ini digunakan untuk pemuatan otomatis dan registrasi kelasPanel
seperti mesin Django'sModelAdmin
.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
.
Atribut
nav
dapat berupa nilai boolean atau callable yang menerima objekRequestContext
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_group
(slug)[sumber]¶ Mengembalikan :class:~horizon.PanelGroup yang ditentukan.
Mengembalikan None jika tidak terdaftar.
-
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 filepanel.py
yang digunakan. Default:None
.
Atribut
nav
dapat berupa nilai boolean atau callable yang menerima objekRequestContext
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 untukPanel
ini. Ini adalah pandangan bahwaPanel.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
danallowed
metode ini dimaksudkan untuk menangani kondisi berbasis pengaturan daripada permission dan pemeriksaan kebijakan berbasis pengguna. Nilai kembaliannya adalah boolean. Jika metode mengembalikanTrue
, maka panel akan didaftarkan dan tersedia untuk pengguna (jika pemeriksaan runtimepermissions
danallowed
juga dipenuhi). Jika metode mengembalikanFalse
, maka panel tidak akan terdaftar dan tidak akan tersedia melalui navigasi normal atau akses URL langsung.
-
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.
-