2017-03-26 25 views
1

我試圖擴展已經存在的Django應用程序。該應用運行良好,但我想添加博客功能。如何在安裝到現有的Django應用程序中後將頁面模板添加到W 012

我已經安裝了鶺鴒,這裏(http://docs.wagtail.io/en/latest/getting_started/integrating_into_django.html)使用指南,檢查鶺鴒安裝,我已導航到這裏: http://myurl/cms

,並顯示鶺鴒管理面板。當我導航到http://myurl/admin時,我得到了我的Django應用程序的默認管理控制面板,迄今爲止非常好。

現在我正在嘗試構建博客。

我發現這個教程: http://wiseodd.github.io/techblog/2015/06/22/developing-wagtail/ 提示以下內容作爲第一步: -

首先,我們創建了一個通用的網頁類作爲主頁類 已經默認創建的時候,我們開始W project項目。

然後,它會顯示這個代碼:

# core/models.py 

from wagtail.wagtailcore.models import Page 
from wagtail.wagtailcore.fields import RichTextField 
from wagtail.wagtailadmin.edit_handlers import FieldPanel 
from wagtail.wagtailsearch import index 

# We’re deriving our GenericPage from Page class, so that our GenericPage also has Page’s field, e.g. title 
class GenericPage(Page): 
    # Let’s create our custom field, named body which is a rich text 
    body = RichTextField() 

    # Index the body field, so that it will be searchable 
    search_fields = Page.search_fields + (index.SearchField(‘body'),) # To show our body field in admin panel, we have to wrap it with FieldPanel and add it to Page’s field panel content_panels = Page.content_panels + [FieldPanel('body', classname=‘full’)] 

我找不到我的意思的文件添加到這一點。我搜索用grep系統,並發現了一些文件,這些文件有文本字符串:

from wagtail.wagtailcore.models import Page 

我決定最有可能的候選人是在目錄:

env/lib/python2.7/site-packages/wagtail/project_template 

在我原來的應用程序目錄。我將上面的代碼添加到駐留在上述目錄中的models.py文件中。然後我跑

python manage.py makemigrations 

但它說沒有發現遷移。上面發佈的教程中的下一步建議您現在應該看到可以在控制面板中創建三種不同的頁面類型,但我找不到創建任何頁面的選項。

  1. 你能告訴我,如果我編輯了正確的文件上面,或者我是否應該已經編輯不同的文件,也

  2. 爲什麼我沒有看到任何選項,在添加新頁面w control控制面板?

我與這裏的文檔(http://docs.wagtail.io/en/latest/getting_started/tutorial.html)協商,試圖繼「延長網頁模式」部分,但不能揣摩出家庭/ models.py文件,因爲沒有文件夾叫回家在我的Django應用程序。

感謝您的任何意見

回答

1

正如final section of the "integrating into Django" docs說:

您現在已經準備好了新的應用程序添加到您的Django項目(通過./manage.py startapp - 記得將它添加到INSTALLED_APPS),並設置高達模型頁

運行./manage.py startapp blogblog應用程序添加到您的項目,包括空models.py - 這是你加你的頁面定義。 (該鶺鴒文檔不細講這一點,因爲它只是遵循標準的Django的工作流程,這是與現有的Django項目與整合...希望熟悉的人)使用wagtail start my_project作爲

教程起點將省略此步驟,因爲初始項目帶有預製的主頁模型models.py。您找到的site-packages/wagtail/project_template目錄實際上是初始項目的「主」副本,在您運行wagtail start my_project時得到克隆。由於這不符合您當前的項目,因此更改它不起作用。

+0

謝謝@gasman我已經創建了博客應用程序,並將其添加到我主項目的settings.py中的已安裝應用程序,我編輯了新應用程序的models.py,以匹配示例models.py,在主頁模型的擴展下,在這裏(http://docs.wagtail.io/en/latest/getting_started/tutorial.html)我已經運行了'manage.py makemigrations'和'manage.py migrate',並且他們完成了。我只是在努力弄清楚我下一步做什麼,看到w control控制面板有什麼不同。 – Gary

+0

如果你已經正確設置了所有東西,當你進入資源管理器 - >主頁 - >添加子頁面時,你應該看到你定義的頁面類型。 – gasman

+0

w admin管理員面板如何知道我在新的博客應用中更新了models.py?我不完全理解兩者之間的聯繫 – Gary

相關問題