Help us understand the problem. What is going on with this article?

Airflow1.9でユーザが作れないときに一時的な対処法

More than 1 year has passed since last update.

公式では以下の手順で作成するように書かれている

公式
import airflow
from airflow import models, settings
from airflow.contrib.auth.backends.password_auth import PasswordUser
user = PasswordUser(models.User())
user.username = 'new_user_name'
user.email = 'new_user_email@example.com'
user.password = 'set_the_password'
session = settings.Session()
session.add(user)
session.commit()
session.close()
exit()

しかしuser.password = ...のところでAttributeError: can't set attributeとエラーが出る
パスワード設定時、以下のようにすれば一応作成できる

from flask_bcrypt import generate_password_hash
user._password = generate_password_hash(password, 12)

ソースを見るとpython3系を使っている場合はstrでキャストしてあげる必要があるっぽいので注意

参考

ソース

更新

タイトルにバージョン追加

lyrical_erica
最近はphp、前はJavaをメインに書いてます。 あとCentOS7もいじってます。 趣味はpython。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away