有關 spPager 和 spLinker

#1 hiramli

請問 spPager 和 spLinker 怎樣配合使用 ?

2010-04-19 08:59:08

#2 jake

论坛搜索一下,之前有同样的问题和回答了。

《关于spLinker和spPager同时使用的问题》http://speedphp.com/bbs/thread-308-1-1.html

2010-04-19 09:04:06

#3 hiramli

论坛搜索一下,之前有同样的问题和回答了。

《关于spLinker和spPager同时使用的问题》 ...
jake 发表于 2010-4-19 09:04
請大大的回答,
但我需要在 第二表單 才設定限制,
那應該怎樣做 ?

我的語文能力比較差,句子寫得不好,不好意思 ...

2010-04-19 09:56:06

#4 jake

請大大的回答,
但我需要在 第二表單 才設定限制,
那應該怎樣做 ?

我的語文能力比較差,句子寫得不好 ...
hiramli 发表于 2010-4-19 09:56
实在看不明白,分页/数据库关联 和 表单/限制 有什么关系?

2010-04-19 10:23:01

#5 hiramli

對不起 ... 我的語文能力有些問題 ...

我想問的 ...
例如 : User 的表 和 Subject 的表 進行多對多的關係

用你提供的方法 只可以對 User的表 進行 多頁的功能,
但我想做到的是希望對 Subject的表 進行 多頁功能 。

希望今次能夠明白 ...
再次多謝大大的回答 !!

2010-04-21 01:31:55

#6 jake

嗯,也就是对关联表结果的分页。当然,这个分页就不像spPager那样容易实现的,也就是说要自行计算分页数据并通过spLinker的结果集限制来进行分页。这里提供一下思路:

1. 分页的实现有两个必要的点:记录总数(计算分页数据)和使用limit来获取部分记录(返回当前页记录)。
2. 看看http://speedphp.com/post/splinker-hasone.html 教程,最下面有关于对关联结果的限制部分。
3. 使用spLinker关联中的countonly = TRUE,来统计查询到关联表的总记录数量(关联的记录总数)。这样即可计算出分页数据。
4. 在spLinker关联中,使用limit来获取当前页记录。

2010-04-21 08:57:27

#7 jake

以下是摘自http://speedphp.com/post/splinker-hasone.html 教程的部分相关文字:

一、对本表内容而言

type,关联类型,只能取值"hasone","hasmany"和"manytomany"三者之一。

enabled,取值TRUE/FALSE,指示是否开启本关联

map,关联标识,在返回的结果里面标识关联内容的键值。

mapkey,本表中与对应表关联的字段名

二、对对应表内容而言

fclass,对应表的spModel继承类名称

fkey,对应表中与本表关联的字段名

三、在多对多情况中,还有

midclass,中间表的spModel继承类名称

四、对关联结果的限制

condition,对关联的附加条件,格式和findAll一样

countonly,取值TRUE/FALSE,在关联查找时是否只返回关联结果的记录数量,而并不返回全部结果。

sort,返回关联结果的排序,格式和findAll一样

field,返回关联结果的限定字段,格式和findAll一样

limit,返回关联结果的数量,格式和findAll一样

2010-04-21 08:59:08

#8 hiramli

謝謝大大 ! 那麼耐心回答我的問題 !
暫時問題解決了 !

2010-04-23 01:51:42