Kompiraの上部メニュー一部が日本語で表示されない問題を修正したい

回答済み

コメント

5件のコメント

  • 正式なコメント
    Ichiro Takahashi

    フィックスポイントの高橋です。

    Kompira メニュー上部の一部は Kompira インストール時の言語設定によって選択されたインポートデータによって、日本語表記または英語表記となるようになっています(ブラウザの言語設定では変わりません)。

    これを変更したい場合は、システム領域にインポートされたオブジェクトの表示名を変更する必要があり、例えばご提示いただいたように manage.py import_data を用いて上書きインポートする、といった手段が考えられます。

    この手法は以前は利用できていたのですが、実は Kompira v1.6.2 (初回回答時に Kompira v1.6.2.post2 と書きましたが誤りでしたでの訂正します)で「エクスポートしたファイルのインポート時にデフォルトでシステム領域を保護するように変更しました」という変更が加わったことにより、上書きオプションを付けてもスキップされるようになっており、そのためメニューの表示も変わらないとなっております。

    これはシステムを保護するための機能ですが、今回の事例のように「システム領域の保護を無効にしてインポートしたい」というときに障壁となってしまいます。今後、インポートにオプションを追加するなどしてシステム領域でも上書きできるように検討を進めたいと考えております。

    ※訂正:manage.py import_data 利用時に --force-mode オプションを付与することで、システム領域でも上書きインポートできるようになっておりました。下記代案に加えて、--force-mode の利用もご検討ください。(2021/07/20追記)

    しかし、おそらく対策版のリリースは今しばらく先になるかと思いますので、いくつか代案を示させていただきます。

    • メニュー表示の変更だけであれば、オブジェクトの表示名を変更すれば追随しますので、ルートディレクトリにある仮想オブジェクトの「プロパティ」画面を開いて表示面を変更してみてください。
    • 必要なオブジェクトあるいは全体をエクスポート(バックアップ)しておき、データベースを完全に初期化してから Kompira を(日本語環境で)再インストールして、バックアップをインポートしなおすことで、表示名以外も日本語になるかと思います。

    もしお急ぎでないようであれば、システム領域の上書きインポートに対応したバージョンのリリースをお待ちいただくこともご検討ください。

    参考になさってみてください。

    コメントアクション Permalink
  • ueyama_tomoaki

    高橋様

    ご回答ありがとうございます。

    >実は Kompira v1.6.2.post2 で「エクスポートしたファイルのインポート時にデフォルトで
    >システム領域を保護するように変更しました」という変更が加わったことにより、
    >上書きオプションを付けてもスキップされるようになっており、そのためメニューの表示も
    >変わらないとなっております。

    ご教示ありがとうございます。
    承知しました。


    >必要なオブジェクトあるいは全体をエクスポート(バックアップ)しておき、データベースを完
    >全に初期化してから Kompira を(日本語環境で)再インストールして、バックアップをインポー
    >トしなおすことで、表示名以外も日本語になるかと思います。

    当該環境は構築直後で特段バックアップ戻すデータもありませんので、
    データ作成していく前に、今のうちに修正しておこうと思っております。

    当該バージョンのkompiraで利用するDBの初期化は、下記認識であってますでしょうか?
    /usr/pgsql-12/bin/postgresql-12-setup initdb


    ちなみに、kompiraのインストールはダウングレード(旧バージョンに戻す)は可能でしょうか?
    (いったんpost2以前のKompira v1.6.2.post1で再インストールして、上書きオプションで修正してから、
    post5を再度インストールといったことができるかどうか) 

    0
    コメントアクション Permalink
  • Ichiro Takahashi

    申し訳ありません、さきほどの回答に誤りがございました。

    「エクスポートしたファイルのインポート時にデフォルトでシステム領域を保護するように変更しました」という変更が加わったのは「Kompira v1.6.2.post2」ではなく「Kompira v1.6.2」でした。失礼いたしました。(回答も修正しておきます)

     

    > 当該バージョンのkompiraで利用するDBの初期化は、下記認識であってますでしょうか?
    > /usr/pgsql-12/bin/postgresql-12-setup initdb

    データベースクラスタディレクトリ(/var/lib/pgsql/12/data/)を削除したうえで、上記コマンドを実行していただければ、Postgresql のデータベース全体を再構築できるかと思います。

    あるいは、kompira の install.sh に --initdata オプションを付けてインストールを実行していただくことでも、データベースを初期化します(こちらはデータベースクラスの再構築ではなく、ユーザやデータベースの再作成(createuser/createdb)になります)。

    インストール時にダウングレードを禁止するような制御は行っておりませんが、移行前後のバージョンの組み合わせによっては正しく動作しない可能性もございますのでご注意ください。

    0
    コメントアクション Permalink
  • ueyama_tomoaki

    ご回答ありがとうございます。

    システムロケールをja_JP.UTF-8に変更(locale.confにも反映済み)したうえで、--initdata オプションの再インストール実施したのですが、以前の設定en-usで取得されるようで変わらずでした。

    →インストーラの最後尾あたりにDEBUG: language_code=en-us (LOCALE_LANG=en_US.UTF-8の表示)

    上記のデータベースクラスタディレクトリを全削除のうえ初期化後、再インストールしたところ、

    解消されました。(上記のDEBUGログはなく-LANG=en_US.UTF-8
    +LANG=ja_JP.UTF-8で反映されているようでした)

    こちらで修正できましたので、当該トピック、クローズとしてください。

    ご教示いただきまして、ありがとうございました。

    0
    コメントアクション Permalink
  • Ichiro Takahashi

    フィックスポイントの高橋です。

    申し訳ございません、本回答に誤りがございましたので、再度訂正させていただきます。

    今後、インポートにオプションを追加するなどしてシステム領域でも上書きできるように検討を進めたいと考えております。

    社内で改めて確認したところ、`manage.py import_data` を利用する場合は `--force-mode` オプションを付与することで、「システム領域でも上書きできる」ようになっていることが分かりました。

    0
    コメントアクション Permalink

サインインしてコメントを残してください。