Hatena::Grouptech

id:rx7(@namikawa)の技術メモ このページをアンテナに追加 RSSフィード

過去記事一覧 | Main Blog (元RX-7乗りの適当な日々) | SBM (id:rx7のBookmark)

2013/12/16

"pip list"実行時にAssertionError

| "pip list"実行時にAssertionError - id:rx7(@namikawa)の技術メモ を含むブックマーク はてなブックマーク - "pip list"実行時にAssertionError - id:rx7(@namikawa)の技術メモ "pip list"実行時にAssertionError - id:rx7(@namikawa)の技術メモ のブックマークコメント

Exception:
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/pip/basecommand.py", line 134, in main
    status = self.run(options, args)
  File "/usr/lib/python2.7/dist-packages/pip/commands/list.py", line 80, in run
    self.run_listing(options)
  File "/usr/lib/python2.7/dist-packages/pip/commands/list.py", line 127, in run_listing
    self.output_package_listing(installed_packages)
  File "/usr/lib/python2.7/dist-packages/pip/commands/list.py", line 136, in output_pack    age_listing
    if dist_is_editable(dist):
  File "/usr/lib/python2.7/dist-packages/pip/util.py", line 347, in dist_is_editable
    req = FrozenRequirement.from_dist(dist, [])
  File "/usr/lib/python2.7/dist-packages/pip/__init__.py", line 194, in from_dist
    assert len(specs) == 1 and specs[0][0] == '=='
AssertionError

↑な感じでエラーが出た、、、

調べてみるとdistributeをアップデートしたら、なおりましたん。

$ sudo pip install -U distribute
トラックバック - http://tech.g.hatena.ne.jp/rx7/20131216

2013/10/10

CSRF verification failed. / CSRF cookie not set.

| CSRF verification failed. / CSRF cookie not set. - id:rx7(@namikawa)の技術メモ を含むブックマーク はてなブックマーク - CSRF verification failed. / CSRF cookie not set. - id:rx7(@namikawa)の技術メモ CSRF verification failed. / CSRF cookie not set. - id:rx7(@namikawa)の技術メモ のブックマークコメント


DjangoなサイトにcurlでPOSTしたときに遭遇。

テスト用なので、一旦setting.pyの下記設定をコメントアウトした。(無効にした。)

MIDDLEWARE_CLASSES = (

・・・・・省略・・・・・

    #'django.middleware.csrf.CsrfViewMiddleware',

・・・・・省略・・・・・

)

ご利用は計画的に・・・。

トラックバック - http://tech.g.hatena.ne.jp/rx7/20131010

2011/06/21

Python + web.py で Hello world!

| Python + web.py で Hello world! - id:rx7(@namikawa)の技術メモ を含むブックマーク はてなブックマーク - Python + web.py で Hello world! - id:rx7(@namikawa)の技術メモ Python + web.py で Hello world! - id:rx7(@namikawa)の技術メモ のブックマークコメント

web.pyのバージョンは0.3系。

web.pyのインストール

$ sudo apt-get install python-webpy

Hello world!のソースコード

ファイル名は"hello.py"とか適当に。

import web 
    
urls = ( 
    '/', 'hello',
    '', 'hello',
)

class hello:
    def GET(self):
        return "Hello world!"
    
if __name__ == "__main__":
    web.application(urls, globals()).run()

実行

$ python sample.py 

ブラウザでアクセス( http://localhost:8080/ )すると、"Hello world!"が表示されているはず。

トラックバック - http://tech.g.hatena.ne.jp/rx7/20110621

2010/11/29

UbuntuのPythonでeasy_installやpipを使いたい場合

| UbuntuのPythonでeasy_installやpipを使いたい場合 - id:rx7(@namikawa)の技術メモ を含むブックマーク はてなブックマーク - UbuntuのPythonでeasy_installやpipを使いたい場合 - id:rx7(@namikawa)の技術メモ UbuntuのPythonでeasy_installやpipを使いたい場合 - id:rx7(@namikawa)の技術メモ のブックマークコメント

easy_install

$ sudo apt-get install python-setuptools

pip

$ sudo apt-get install python-pip
トラックバック - http://tech.g.hatena.ne.jp/rx7/20101129

2010/09/15

Model定義の変更時にDBへ簡単に反映させるDjango Evolution

| Model定義の変更時にDBへ簡単に反映させるDjango Evolution - id:rx7(@namikawa)の技術メモ を含むブックマーク はてなブックマーク - Model定義の変更時にDBへ簡単に反映させるDjango Evolution - id:rx7(@namikawa)の技術メモ Model定義の変更時にDBへ簡単に反映させるDjango Evolution - id:rx7(@namikawa)の技術メモ のブックマークコメント

Djangoで、Model(モデル)の定義を変更した時に、DB定義も簡単に変更・反映(マイグレーション)してほしいところだが、Djangoには標準でそういう機構がない、と。

そこで、それを実現する「django-evolution」を使ってみた。

インストール

Ubuntuでやってみた。

$ sudo apt-get install python-django-evolution

設定とか

settings.pyを編集し、"INSTALLED_APPS"に以下のような感じで追記。

INSTALLED_APPS = (
    ・・・省略・・・
    'django_evolution',
)

次に、本題のmodels.pyを編集し、定義変更したいカラムを弄ります。

試しに、"max_length"の値を変更してみた。以下、実行例です。

DB定義を変更するためのDDL(DML)を確認

$ ./manage.py evolve --hint --sql
-- Evolve application server
UPDATE `servers` SET `memo`=LEFT(`memo`,2048);
ALTER TABLE `servers` MODIFY COLUMN `memo` varchar(2048);

実際に、DB定義を変更・反映する

一応↑でどんなDDL(DML)が発行されるか確認の上、実行しましょう。

途中で、実行してよいかの確認があります。

$ ./manage.py evolve --hint --execute

You have requested a database evolution. This will alter tables
and data currently in the 'srvmgr' database, and may result in
IRREVERSABLE DATA LOSS. Evolutions should be *thoroughly* reviewed
prior to execution.

Are you sure you want to execute the evolutions?

Type 'yes' to continue, or 'no' to cancel: yes
Evolution successful.

実際に変更を確認し、DBマイグレーションdone.

参考

トラックバック - http://tech.g.hatena.ne.jp/rx7/20100915