web-dev-qa-db-ja.com

Django.urlsからパスをインポートできません

コマンドを実行しようとしました:

from Django.urls import path

エラーの取得:

トレースバック(最後の最後の呼び出し):ファイル「<stdin>」、1行目のImportError:名前 'path'をインポートできません

Djangoバージョン1.11を使用しています

37
Lev

パスをインポートできない理由は、ここに記載されているDjango 2.0で新しいためです。 https://docs.djangoproject.com/en/2.0/ref/urls/#path

そのページの右下隅で、ドキュメントのバージョンをインストールしたバージョンに変更できます。これを行うと、1.11ドキュメントにpathのエントリがないことがわかります。

42
Nick Chapman

Djangoバージョン2が必要です

pip install --upgrade Django
pip3 install --upgrade Django

python -m Django --version # 2.0.2
python3 -m Django --version # 2.0.2
23
jasonleonhard

パスの代わりにURLを使用します。

from Django.conf.urls import url

urlpatterns = [
    url('', views.homepageview, name='home')
]
13
Saurabh Shukla

Python 2はDjango 2をサポートしません。MacでPython 3およびDjango 2をインストールしたら、シェルから次のコマンドを実行してアプリを実行しますパスを維持しながら:

python3 manage.py runserver

アップグレードしてMacを使用している場合でも、次のコマンドを入力する場合、デフォルトでPython 2を実行します。

python manage.py runserver

Djangoのバージョンは間違っているため、pathのインポートエラーが表示されます。

4
Lydia Thomas

アプリ(ページ)とプロジェクトの両方でurlを使用する方法。

プロジェクト全体のURL設定root/urls.py

 from Django.conf.urls import url, include
 from Django.contrib import admin
 urlpatterns = [
     url(r'^admin/', admin.site.urls),
     url('', include('pages.urls')),
   ]

アプリページのURL設定root/pages/urls.py

# pages/urls.py
from Django.conf.urls import url
from . import views
urlpatterns = [
url('', views.homePageView, name='home')
]

urls.pyの設定が既にあると思います

from Django.urls import path, include 
# and probably something like this 
    urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('blog.urls')),
]

そして、あなたのアプリには次のようなものが必要ですblog/urls.py

 from Django.urls import path

 from .views import HomePageView, CreateBlogView

 urlpatterns = [
   path('', HomePageView.as_view(), name='home'),
   path('post/', CreateBlogView.as_view(), name='add_blog')
 ]

その場合は、おそらく環境をアクティブにしていない可能性が高いpipenv Shellを最初に環境をアクティブにするために次を試してくださいまだ同じエラーが発生する場合は、このメソッドを試してください

Djangoがインストールされていることを確認しますか??他のパッケージはありますか?すなわち、枕は次を試してください

pipenv install Django==2.1.5 pillow==5.4.1

次に、環境をアクティブにすることを忘れないでください

pipenv Shell

環境がアクティブになったら、実行してみてください

python3 manage.py makemigrations

python3 manage.py migrate

その後、実行する必要があります

python3 manage.py runserver

これが役立つことを願っています

1
user3719458

python 2.7を使用している場合、python2.7はDjango 2をサポートしないため、Django.urlsをインストールできません。既にpython 3.6を使用している場合、Djangoを2よりも大きい最新バージョンにアップグレードする必要があります。

  • PowerShellで

    pip install -U Django

  • 検証

>

PS C:\Users\xyz> python
Python 3.6.6 |Anaconda, Inc.| (default, Jul 25 2018, 15:27:00) [MSC v.1910 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.

>>> from Django.urls import path
>>>

次のプロンプトが来たとき、それはそれが今インストールされ、使用する準備ができていることを意味します。

1
Rishi Bansal

pythonインタープリターを変更し、機能しました。キーボードで、ctrl + shift + pを押しました。次のウィンドウで、「python:select Interpreter」と入力し、必要なインタープリターを選択するオプションがありました。ここから、仮想環境にあるpythonインタープリターを選択しました。
この場合、それは私の~\DevFolder\myenv\scripts\python.exeでした

0
JuliusKiura

仮想環境をアクティブにするのを忘れたように見えるpython3 -m venv venvを実行するか、既に仮想環境がセットアップされている場合はsource venv/bin/activateを実行してアクティブにする

0
user3719458

エラーが示すように、パスをインポートできません。

enter image description here

そのため、ここでは、以下に示すように、pathの代わりにurlを使用します。 -

最初にurlパッケージをインポートしてから、pathurl

from Django.conf.urls import url
urlpatterns = [
    url('admin/', admin.site.urls),
]

詳細については、この link を参照してください。

0
Anoop Kumar