请选择 进入手机版 | 继续访问电脑版
设为首页收藏本站

Crossin的编程教室

 找回密码
 立即加入
楼主: crossin先生

Python 实战(4):搜一下

[复制链接]

174

主题

45

好友

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

发表于 2017-6-22 23:42:00 |显示全部楼层
Rune 发表于 2017-6-22 17:25
先生 我按照教程里写了代码结果搜索结果是none,我直接copy了你留在帖子里的代码只是改了数据库和模板的名 ...

帖子下面的代码有问题。你参考教程中的代码,要根据condition搜出movie,然后再rander后return返回。
你没有return,默认就返回none
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

0

主题

0

好友

24

积分

新手上路

Rank: 1

发表于 2017-6-23 11:36:37 |显示全部楼层
本帖最后由 Rune 于 2017-6-23 11:43 编辑
crossin先生 发表于 2017-6-22 23:42
帖子下面的代码有问题。你参考教程中的代码,要根据condition搜出movie,然后再rander后return返回。
你 ...

先生 非常感谢你的回复,其实我昨天也试过按照教程写代码,但是还是显示none。今天我又找到第八课,参考里面搜索的部分写,结果还是none。我看到cmd上面说"http/1.1 POST"405 method not allowed,也搜索了相关解决办法,不知道是不是和别的设置有关而不是代码的问题?下面是我修改后的代码
class index:
    def GET(self):
        movies=db.select('movie')
        return render.b(movies)
        def POST(self):
             data = web.input()
        condition = r'title like "%' + data.title + r'%"'
        movies = db.select('movie', where=condition)
        return render.b(movies)
回复

使用道具 举报

174

主题

45

好友

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

发表于 2017-6-23 21:01:41 |显示全部楼层
Rune 发表于 2017-6-23 11:36
先生 非常感谢你的回复,其实我昨天也试过按照教程写代码,但是还是显示none。今天我又找到第八课,参考里 ...

你这个缩进都完全不对啊
405就是说你没有定义post方法,如果你缩进是你发上来的这样,那肯定不对。
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

174

主题

45

好友

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

发表于 2017-6-23 21:01:49 |显示全部楼层
Rune 发表于 2017-6-23 11:36
先生 非常感谢你的回复,其实我昨天也试过按照教程写代码,但是还是显示none。今天我又找到第八课,参考里 ...

你这个缩进都完全不对啊
405就是说你没有定义post方法,如果你缩进是你发上来的这样,那肯定不对。
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

0

主题

0

好友

24

积分

新手上路

Rank: 1

发表于 2017-6-24 22:57:25 |显示全部楼层
crossin先生 发表于 2017-6-23 21:01
你这个缩进都完全不对啊
405就是说你没有定义post方法,如果你缩进是你发上来的这样,那肯定不对。 ...

先生 感谢你的回复。我粘贴上来之后缩进变了,图贴在下面 第20行我也觉得缩进应该往后一格,但是往后一格就会说unexpected indent,在图里那个位置才没有问题。我已经在搜索功能这一块卡了两天了,也试过自己查别的方法解决,实在解决不了了。感谢你耐心的回复。
1.png
回复

使用道具 举报

174

主题

45

好友

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

发表于 2017-6-25 14:40:42 |显示全部楼层
Rune 发表于 2017-6-24 22:57
先生 感谢你的回复。我粘贴上来之后缩进变了,图贴在下面 第20行我也觉得缩进应该往后一格,但是往后一格 ...

你这缩进还是混乱的。不知道你之前基础课程里的内容是否有都看过,包括缩进的含义、函数的定义、面向对象等。如果不熟悉,不建议直接做这个,不然也只是照抄代码,不知道什么意思。

这里index类里面要定义两个函数 GET 和 POST,如果你缩进不对,会直接影响程序的逻辑。有可能你是复制了网上的代码,又手动添加了代码,空格和tab混用了。请重新打或者换一个编辑器。

这里有示例代码,你仔细再对照一下 https://github.com/crossin/MovieSite
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

0

主题

0

好友

24

积分

新手上路

Rank: 1

发表于 2017-6-26 21:24:56 |显示全部楼层
crossin先生 发表于 2017-6-25 14:40
你这缩进还是混乱的。不知道你之前基础课程里的内容是否有都看过,包括缩进的含义、函数的定义、面向对象 ...

感谢先生耐心的解答,我确实是从您的python基础教程一节课一节课看过来的,课后习题包括足球游戏都写了,我再仔细检查一下我的代码吧。 谢谢!
回复

使用道具 举报

0

主题

0

好友

34

积分

新手上路

Rank: 1

发表于 2017-9-12 11:52:33 |显示全部楼层
请问先生,为什么condition = r'title like "%'+data.title+r'%"' 中,用户输入的data 要写成data.tltle呢?换成data会显示格式错误,在数据库中的操作也是直接select * from movie where title like "%输入数据%"就可以了,求解
回复

使用道具 举报

174

主题

45

好友

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

发表于 2017-9-12 12:14:59 |显示全部楼层
不会飞的hjh 发表于 2017-9-12 11:52
请问先生,为什么condition = r'title like "%'+data.title+r'%"' 中,用户输入的data 要写成data.tltle呢 ...

<input type="text" name="title" />

title是对应你的文本框
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

0

主题

0

好友

34

积分

新手上路

Rank: 1

发表于 2017-9-12 12:27:05 |显示全部楼层
crossin先生 发表于 2017-9-12 12:14
title是对应你的文本框

原来是这样,谢谢先生
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入

QQ|手机版|Archiver|Crossin的编程教室 ( 苏ICP备15063769号  

GMT+8, 2024-4-18 21:08 , Processed in 0.031255 second(s), 23 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部