0
我需要Django的that function之類的東西。Django的WordPress「is_admin」函數的模擬? (對於檢查位置,不是權限。)
原因:我爲管理員和其他頁面編寫單獨的配置文件。配置的自定義字段確定:
class Article(models.Model):
field = CustomField(config={'default': {}, 'admin': {}})
出於這個原因,我不能用我的插件擴展AdminTextareaWidget(低於當前的代碼部分)。或者我可以嗎?怎麼樣?
class CustomField(TextField):
def __init__(self, config, *args, **kwargs):
self.config = dict_merge(initial_config, config)
super(CustomField, self).__init__(*args, **kwargs)
def formfield(self, **kwargs):
###################################
# need to check for admin page here
###################################
defaults = {'widget': CustomWidget(self.config)}
defaults.update(kwargs)
return super(CustomField, self).formfield(**defaults)
class CustomWidget(Textarea):
def __init__(self, config, attrs=None):
#########
# or here
#########
self.config = config
super(CustomWidget, self).__init__(attrs)
對不起,我誤解了你的問題。我將刪除我的答案,因爲它不涉及。那麼我想我不太理解你的問題。你如何使用CustomField? – jproffitt
你是什麼意思爲「使用」?它只是像models.TextField ... – lampslave
您澄清它。謝謝。我認爲你將不得不在視圖中執行自定義內容,在那裏你可以訪問當前的URL。因此,在初始化表單後,您可以更改小部件。我想你會需要在那裏做。 – jproffitt