我在控制器文件中定义了一个函数(test.py) 代码是:
Config-($CONFIG_SAMPLE) = sample.o
然后,当我访问http://localhost:8000/demo/test/user时 为什么网址会自动更改为http://localhost:8000/demo/default/user/login?
答案 0 :(得分:1)
当您通过[master@localhost part3ddis]$ g++ maintestconjugategradientmatCCS.cc densematrixvector.cc mmio.cc libsuperlu_4.3.a libblas.a -lgfortran
/tmp/ccg7iPUj.o: In function `int ConjugateGradient<DenseMatrix, DenseVector>(DenseMatrix const&, DenseVector const&, DenseVector&, int const&, int const&)':
maintestconjugategradientmatCCS.cc:(.text._Z17ConjugateGradientI11DenseMatrix11DenseVectorEiRKT_RKT0_RS5_RKiSA_[_Z17ConjugateGradientI11DenseMatrix11DenseVectorEiRKT_RKT0_RS5_RKiSA_]+0xb2): undefined reference to `void gemv<DenseMatrix, DenseVector>(double const&, DenseMatrix const&, DenseVector const&, double const&, DenseVector&)'
maintestconjugategradientmatCCS.cc:(.text._Z17ConjugateGradientI11DenseMatrix11DenseVectorEiRKT_RKT0_RS5_RKiSA_[_Z17ConjugateGradientI11DenseMatrix11DenseVectorEiRKT_RKT0_RS5_RKiSA_]+0x208): undefined reference to `void gemv<DenseMatrix, DenseVector>(double const&, DenseMatrix const&, DenseVector const&, double const&, DenseVector&)'
collect2: error: ld returned 1 exit status
调用Auth
对象时,它会检查URL args(即控制器和函数之后的URL部分),以确定请求了哪个Auth方法(例如,登录,注册,个人资料等)。如果没有URL arg(如你的情况),那么它会重定向到与当前URL相同的URL,但是附加了/ login(否则,如果没有请求任何特定的Auth方法,它将没有任何内容可以返回)。 / p>
如果您打算使用上述构造(即简单调用auth()
的通用user
函数),那么您应该创建包含特定Auth方法的链接作为第一个URL arg。如果由于某种原因您希望登录链接为/ user(没有任何URL arg),您可以执行以下操作:
auth()
如果没有URL args,那将明确返回登录表单,否则会回退到标准行为。
对于每个Auth方法,您当然可以完全独立的操作:
def user():
if not request.args:
form = auth.login()
else:
form = auth()
return dict(form=form)