www.morihi-soc.net のブログは閉鎖しました。(2022/12/31) ご連絡は Twitter(@morihi_soc) かメール(morihisa.sec@gmail.com)でお願いします。
Pythonの話。wheelを使ってC拡張モジュールをデプロイする仕組みが上手く稼動したのでメモ。 依存パッケージの本番デプロイ アプリケーションが依存しているPythonパッケージをどうやって本番サーバーにデプロイするか。大抵はrequirements.txtにpip freezeで吐いた内容を保存しているだろう。とすると、本番サーバーでpip install -r requirements.txtすれば良いんだが、githubが落ちてたりPyPIが落ちてたりすると、外部要因でデプロイスクリプトが途中でコケる、というダサい事態になる。それを避けるために事前にパッケージを固めて各サーバーに配布する仕組みが必要になる。C拡張モジュールを使いたいけど本番サーバーでCコンパイラが自由に使えない、という時も同様で、事前にコンパイル済みの物を配布する必要がある。 pip bundleを使う場合 (d
Contents Pyramidのセキュリティの仕組み 認証 認可 アプリケーションでの実際 セキュリティ設定 ビューとモデル ログイン処理 まとめ 始めに断っておこう。Pyramidにはファンシーなログインフォームやユーザー管理なんてついてこない。 認証、認可の仕組みはあるが、Pyramidに設定一発で動くような押しつけがましいViewやModelは存在しない。 そういうのが好きな人はDjangoというフレームワークがあるから、そっちにしときな。 このエントリでは、Pyramidで認証、認可の仕組みを使う方法を説明する。 CSRFとかそういうのは扱わないのであしからず。 Pyramidのセキュリティの仕組み 先に述べたとおりPyramidには認証と認可の仕組みがある。 認証というのは、今アプリケーションを使っているのが誰なのかを特定するもので、 認可は誰がその機能や処理を実行してよいかと
Pyramid is a flexible Python web framework that allows applications to start small and grow as needed without enforcing specific technologies or patterns. The document provides suggestions for structuring larger Pyramid projects, choosing persistence mechanisms, assembling toolkits, using traversal vs URL dispatch, testing, documenting, and deploying applications using buildout, supervisor, and Ng
Contents URLディスパッチ PyramidでのURLディスパッチ View Predicate ルートURL トラバーサル オブジェクトのデフォルトビュー ビュー名 リソースURL URLディスパッチとトラバーサルの比較 URLディスパッチとトラバーサルの混合 軽いURLディスパッチ + がっつりトラバーサル ガッツリURLディスパッチ + 軽くトラバーサル まとめ とりあえずコントローラースタイルと書いたが、ようするにWebアプリケーションがリクエストを受け取ってから処理に入るまでの流れである。 Pyramidはあえて複数の方法を採用している。その他のフレームワークから来る人たちがお気に入りの方法をとれるようにするためだ。 大きく分けて、Zope系由来のトラバーサル、DjangoやPylonsが使っているURLディスパッチがある。 (TurboGearsはPylons上のフレー
Fractions Simplify fractions 242/33 Rationalize repeating decimals 0.[123] Approximations pi E exp(pi) x (x+2)/((x+3)(x-4)) simplify((x**2 - 4)/((x+3)(x-2))) Polynomial and Rational Functions Polynomial division div(x**2 - 4 + x, x-2) Greatest common divisor gcd(2*x**2 + 6*x, 12*x) …and least common multiple lcm(2*x**2 + 6*x, 12*x) Factorization factor(x**4/2 + 5*x**3/12 - x**2/3) Multivariate fac
PEP 3107 – Function Annotations Author: Collin Winter <collinwinter at google.com>, Tony Lownds <tony at lownds.com> Status: Final Type: Standards Track Created: 02-Dec-2006 Python-Version: 3.0 Post-History: Table of Contents Abstract Rationale Fundamentals of Function Annotations Syntax Parameters Return Values Lambda Accessing Function Annotations Use Cases Standard Library pydoc and inspect Rel
Compile-time type checking Static typing makes it easier to find bugs with less debugging. Easier maintenance Type declarations act as machine-checked documentation. Static typing makes your code easier to understand and easier to modify without introducing bugs. Grow your programs from dynamic to static typing You can develop programs with dynamic typing and add static typing after your code has
トイプーこと id:atsuoishimoto が書いていた、zipファイルで実行可能なPythonアプリケーションを試してみた。 http://d.hatena.ne.jp/atsuoishimoto/20120503/1336050988 試した環境はWindowsXP、Python2.7。 __main__.py # coding: utf-8 import SimpleHTTPServer SimpleHTTPServer.test() SimpleHTTPServerを実行して、カレントディレクトリをHTTPで公開するだけの単純なスクリプト。 compileallでコンパイルしてみる ソースコードそのままでは芸がないので、zip化の前にcompileallでバイトコードを作ってみることにした。 C:\work\sandbox\zipapp>python -OO -m compil
みんなのIoT/みんなのPythonの著者。二子玉近く160平米の庭付き一戸建てに嫁/息子/娘/わんこと暮らしてます。月間1000万PV/150万UUのWebサービス運営中。 免責事項 プライバシーポリシー Pythonのlambdaは無名関数を式で作ることができる文法。なんか関数言語っぽくて,「LISPの正当な継承者はPythonだ」という気にさせるクールな機能。 クールだけど,使い方を間違えると大変なことになる。乱用は避けたい。極端すぎるほどアナーキーなlambdaの使い方を見つけたので,反面教師としていくつかの例を紹介します。なお,このコードはあまりにアナーキーなのでPython 3.xでは(一部)動きません。 def pow(x, power): return x**power というコードがあったとして, pow = lambda x, power: x**power みたいにl
吹奏楽コンクール リウマチの調子が悪い!薬の副作用もやばい! 副作用のせいでご飯が全然食べられなくなって顔から痩せていくんだけど、お腹とかお尻から痩せたらいいのに。蓄えがあるから多少痩せたってちょうどいいくるいやけど、幸薄そうに見えるから顔は太ったままがいいなぁ。 お…
SQLAlchemy + URLディスパッチ Wiki チュートリアル¶ このチュートリアルでは Python に詳しい開発者に SQLAlchemy と url dispatch ベースの Pyramid アプリケーションを紹介します。 チュートリアルを終えた時点で、開発者は基本的な認証付き Wiki アプリケーションを作成したことになります。 カットアンドペースト目的で、このチュートリアルの全てのステップのソースコード を閲覧することができます。 https://github.com/Pylons/pyramid/tree/1.3-branch/docs/tutorials/wiki2/src.
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く