質問編集履歴

4

2019/08/13 15:25

投稿

mito.2357
mito.2357

スコア19

test CHANGED
File without changes
test CHANGED
@@ -110,7 +110,7 @@
110
110
 
111
111
 
112
112
 
113
- engine = create_engine(f'mysql://{user}:{password}@{host}/{database}?charset=utf8', convert_unicode=True)
113
+ engine = create_engine(f'mysql+pymysql://{user}:{password}@{host}/{database}?charset=utf8', convert_unicode=True)
114
114
 
115
115
 
116
116
 

3

ソース追記

2019/08/13 15:25

投稿

mito.2357
mito.2357

スコア19

test CHANGED
File without changes
test CHANGED
@@ -132,6 +132,28 @@
132
132
 
133
133
  ```
134
134
 
135
+ ```python
136
+
137
+ # do_create.py
138
+
139
+ from database import init_db
140
+
141
+
142
+
143
+ try:
144
+
145
+ init_db()
146
+
147
+ except Exception as e:
148
+
149
+ import traceback
150
+
151
+ print(traceback.format_exc())
152
+
153
+
154
+
155
+ ```
156
+
135
157
  ### 補足
136
158
 
137
159
  Anacondaを使ってpythonファイルを実行しています。

2

traseback追記

2019/08/13 14:44

投稿

mito.2357
mito.2357

スコア19

test CHANGED
File without changes
test CHANGED
@@ -24,6 +24,62 @@
24
24
 
25
25
  ```
26
26
 
27
+ 以下追記
28
+
29
+ ```
30
+
31
+ Traceback (most recent call last):
32
+
33
+ File: "/home/mydomain/mydomain.com/public_html/test/do_create.py", line 4, in init_db()
34
+
35
+ File: "/home/mydomain/mydomain.com/public_html/test/database.py", line 21, in init_db Base.metadata.create_all(engine)
36
+
37
+ File: "/home/mydomain/.pyenv/versions/anaconda3-5.3.1/lib/python3.7/site-packages/sqlalchemy/sql/schema.py", line 4287, in create_all ddl.SchemaGenerator, self, checkfirst=checkfirst, tables=tables
38
+
39
+ File: "/home/mydomain/.pyenv/versions/anaconda3-5.3.1/lib/python3.7/site-packages/sqlalchemy/engine/base.py", line 2032, in _run_visitor with self._optional_conn_ctx_manager(connection) as conn:
40
+
41
+ File: "/home/mydomain/.pyenv/versions/anaconda3-5.3.1/lib/python3.7/contextlib.py", line 112, in __enter__ return next(self.gen)
42
+
43
+ File: "/home/mydomain/.pyenv/versions/anaconda3-5.3.1/lib/python3.7/site-packages/sqlalchemy/engine/base.py", line 2024, in _optional_conn_ctx_manager with self._contextual_connect() as conn:
44
+
45
+ File: "/home/mydomain/.pyenv/versions/anaconda3-5.3.1/lib/python3.7/site-packages/sqlalchemy/engine/base.py", line 2226, in _contextual_connect self._wrap_pool_connect(self.pool.connect, None),
46
+
47
+ File: "/home/mydomain/.pyenv/versions/anaconda3-5.3.1/lib/python3.7/site-packages/sqlalchemy/engine/base.py", line 2262, in _wrap_pool_connect return fn()
48
+
49
+ File: "/home/mydomain/.pyenv/versions/anaconda3-5.3.1/lib/python3.7/site-packages/sqlalchemy/pool/base.py", line 363, in connect return _ConnectionFairy._checkout(self)
50
+
51
+ File: "/home/mydomain/.pyenv/versions/anaconda3-5.3.1/lib/python3.7/site-packages/sqlalchemy/pool/base.py", line 760, in _checkout fairy = _ConnectionRecord.checkout(pool)
52
+
53
+ File: "/home/mydomain/.pyenv/versions/anaconda3-5.3.1/lib/python3.7/site-packages/sqlalchemy/pool/base.py", line 492, in checkout rec = pool._do_get()
54
+
55
+ File: "/home/mydomain/.pyenv/versions/anaconda3-5.3.1/lib/python3.7/site-packages/sqlalchemy/pool/impl.py", line 139, in _do_get self._dec_overflow()
56
+
57
+ File: "/home/mydomain/.pyenv/versions/anaconda3-5.3.1/lib/python3.7/site-packages/sqlalchemy/util/langhelpers.py", line 68, in __exit__ compat.reraise(exc_type, exc_value, exc_tb)
58
+
59
+ File: "/home/mydomain/.pyenv/versions/anaconda3-5.3.1/lib/python3.7/site-packages/sqlalchemy/util/compat.py", line 154, in reraise raise value
60
+
61
+ File: "/home/mydomain/.pyenv/versions/anaconda3-5.3.1/lib/python3.7/site-packages/sqlalchemy/pool/impl.py", line 136, in _do_get return self._create_connection()
62
+
63
+ File: "/home/mydomain/.pyenv/versions/anaconda3-5.3.1/lib/python3.7/site-packages/sqlalchemy/pool/base.py", line 308, in _create_connection return _ConnectionRecord(self)
64
+
65
+ File: "/home/mydomain/.pyenv/versions/anaconda3-5.3.1/lib/python3.7/site-packages/sqlalchemy/pool/base.py", line 437, in __init__ self.__connect(first_connect_check=True)
66
+
67
+ File: "/home/mydomain/.pyenv/versions/anaconda3-5.3.1/lib/python3.7/site-packages/sqlalchemy/pool/base.py", line 639, in __connect connection = pool._invoke_creator(self)
68
+
69
+ File: "/home/mydomain/.pyenv/versions/anaconda3-5.3.1/lib/python3.7/site-packages/sqlalchemy/engine/strategies.py", line 114, in connect return dialect.connect(*cargs, **cparams)
70
+
71
+ File: "/home/mydomain/.pyenv/versions/anaconda3-5.3.1/lib/python3.7/site-packages/sqlalchemy/engine/default.py", line 451, in connect return self.dbapi.connect(*cargs, **cparams)
72
+
73
+ File: "/home/mydomain/.pyenv/versions/anaconda3-5.3.1/lib/python3.7/site-packages/pymysql/__init__.py", line 94, in Connect return Connection(*args, **kwargs)
74
+
75
+ File: "/home/mydomain/.pyenv/versions/anaconda3-5.3.1/lib/python3.7/site-packages/pymysql/connections.py", line 253, in __init__ self.ctx = self._create_ssl_ctx(ssl)
76
+
77
+ File: "/home/mydomain/.pyenv/versions/anaconda3-5.3.1/lib/python3.7/site-packages/pymysql/connections.py", line 330, in _create_ssl_ctx ca = sslp.get('ca') AttributeError: 'str' object has no attribute 'get'
78
+
79
+ ```
80
+
81
+ ※File毎に改行しました。
82
+
27
83
  ### 該当のソースコード
28
84
 
29
85
 
@@ -33,6 +89,8 @@
33
89
 
34
90
 
35
91
  ```python
92
+
93
+ # database.py
36
94
 
37
95
  from sqlalchemy import create_engine
38
96
 

1

2019/08/13 14:35

投稿

mito.2357
mito.2357

スコア19

test CHANGED
File without changes
test CHANGED
@@ -3,6 +3,8 @@
3
3
  Web上でMySQlを動作させたいです。
4
4
 
5
5
  SQliteを使った場合は正常に動作しましたが、MySQLに変えるとクエリの無いページのみ閲覧できる状態になりました。テーブルが存在していないからだろうと思いテーブルを作成する関数を呼び出すと、トップページの時点で下記のようなエラーが発生しました。
6
+
7
+ ローカル環境ではMySQLでも正常に動作しました。
6
8
 
7
9
 
8
10