質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Django

DjangoはPythonで書かれた、オープンソースウェブアプリケーションのフレームワークです。複雑なデータベースを扱うウェブサイトを開発する際に必要な労力を減らす為にデザインされました。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Q&A

解決済

2回答

2018閲覧

Python DjangoをAWSで動かした際のorder_byの挙動

yuki1010

総合スコア43

Django

DjangoはPythonで書かれた、オープンソースウェブアプリケーションのフレームワークです。複雑なデータベースを扱うウェブサイトを開発する際に必要な労力を減らす為にデザインされました。

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

1グッド

0クリップ

投稿2017/02/07 15:15

ご回答よろしくお願いいたします。
私はAWSでDjangoのアプリを Elastic Beanstalk を使い運用しています。
そこで問題が生じています。内容は
日本語カタカナでのsort機能(order_by)です。
ローカルでの動作は下の画像の通り正常なのですが、
画像
AWSでの表示は
画像2
にランダム??に表示されてしまいます。
原因が全く分かりません。何かお気づきの方はご回答何卒よろしくお願いします。

一応 views.pyのコードを書かせて頂きます。

python

1class UserDetailListFiriganaView(MasterAndStaffOnlyMixin, TemplateView): 2 template_name = 'userdetail/userdetail_list_furigana.html' 3 def get_context_data(self, *args, **kwargs): 4 context = super(UserDetailListFiriganaView, self).get_context_data(*args, **kwargs) 5 context['a_list'] = UserDetail.objects.filter(short_last_name='ア').order_by('last_name2') 6 context['ka_list'] = UserDetail.objects.filter(short_last_name='カ').order_by('last_name2') 7 context['sa_list'] = UserDetail.objects.filter(short_last_name='サ').order_by('last_name2') 8 context['ta_list'] = UserDetail.objects.filter(short_last_name='タ').order_by('last_name2') 9 context['na_list'] = UserDetail.objects.filter(short_last_name='ナ').order_by('last_name2') 10 context['ha_list'] = UserDetail.objects.filter(short_last_name='ハ').order_by('last_name2') 11 context['ma_list'] = UserDetail.objects.filter(short_last_name='マ').order_by('last_name2') 12 context['ya_list'] = UserDetail.objects.filter(short_last_name='ヤ').order_by('last_name2') 13 context['ra_list'] = UserDetail.objects.filter(short_last_name='ラ').order_by('last_name2') 14 context['wa_list'] = UserDetail.objects.filter(short_last_name='ワ').order_by('last_name2') 15 return context

フリガナの行毎引っ張りたいのでこのようなコードです。
後AWSのシステムは↓↓
python
になっております。
何卒よろしくお願いします。

223horn👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ローカルとAWSで照合順は同じでしょうか?
以下で確認してみてください。

SHOW FULL COLUMNS FROM table_name;

投稿2017/02/07 23:33

moonphase

総合スコア6621

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

自己解決

ご回答してくださった方、ありがとうございます。
以下の資料を参考にして問題は解決できました。
【参考】
1・参考
2・参考
3・参考

【AWSのデータベースに入る際の手順】

・EC2のセキュリティグループの特定のデーターベースセキュリティグループを選択

・タブでインバウンドを押して以下を追加

タイプ: すべとのトラフィック プロトコル:すべて ポート範囲: すべて(0-65535) 送信元 ご自分のIPあどれす

するとターミナルからでもアクセスできるようになる

・ターミナルで以下を打つ

psql --host=エンドポイント --port=5432ポート --username=ログイン名 --dbname=データーベース名

・パスワードを直接入力

・そして以下を打つ
ALTER TABLE userdetails_userdetailテーブル名 ALTER COLUMN last_name2カラム名 TYPE VARCHAR COLLATE "ja_JP.utf8";

※ テーブル名はapp名_モデル名であるので注意

・最後にAWSで追加したセキュリティグループのインバウンドを削除

投稿2017/02/08 09:19

yuki1010

総合スコア43

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問