1

私はDRFをバックエンドとしてnaturaltime組み込み機能を使用するモバイルアプリケーションで作業していますが、これはモバイルアプリであるため、画面スペースが大きな問題です(少なくとも私にとっては)。したがって、任意の日付については、次のようになります。

"1 week, 2 days ago"

それはいいことですが、手に入れることができるのだろうか

"1w, 2d ago"

文字列内の単語を置き換えることができることは知っていますが、もっと良い方法があることを願っています。なにか提案を?ありがとう!

4

3 に答える 3

3

おそらくこれを行う最善の方法は、名前を「ローカライズ」することです。のソースを参照してください。変換するには、特に 240 行目以降のファイルをバックアップして変更します。次に、 を実行してファイルを更新します。django.contrib.humanizedjango/contrib/humanize/locale/<your language>/LC_MESSAGES/django.pomanage.py compilemessages.mo

編集:

これを行う別の方法は、Django のインストールを変更しないことです。

  1. settings.pyまだ行っていない場合は、次の行を に追加します。

    LOCALE_PATHS = (
        "/path/to/my/project/locale/",
    )
    
  2. en上記のパスに呼び出されるサブディレクトリを追加します

  3. django.po作成したディレクトリに というファイルを追加しますen
  4. 翻訳の内容をnaturaltimeファイルに貼り付けます。
  5. 好みに合わせて変更してください。
  6. を実行して、 にあるディレクトリからファイルmanage.py compilemessagesを更新し、変更が反映されるまで待ちます。.mo manage.py
于 2015-09-03T00:04:04.490 に答える
0

カスタマイズできるものではないようです:

https://github.com/django/django/blob/master/django/contrib/humanize/templatetags/humanize.py#L189

于 2015-09-03T00:09:54.457 に答える