欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

stark組件5_擴(kuò)展url-創(chuàng)新互聯(lián)

Stark組件擴(kuò)展url

這個(gè)功能在很多地方都要用到
這里舉例的需求是在customer查看頁(yè)面中,點(diǎn)擊咨詢課程中的某一個(gè)課程名稱就會(huì)將這個(gè)課程與對(duì)應(yīng)的同學(xué)解綁(不再顯示)
要實(shí)現(xiàn)這個(gè)需求需要新添加一條url,這條url中我們可以獲取想要解綁的課程id和表中這條記錄的主鍵

創(chuàng)新互聯(lián)是一家專注于成都做網(wǎng)站、網(wǎng)站制作和雅安電信機(jī)房的網(wǎng)絡(luò)公司,有著豐富的建站經(jīng)驗(yàn)和案例。

方法與filter、pop等功能相同,都是在表所對(duì)應(yīng)的自己的配置類中設(shè)置,從而實(shí)現(xiàn)之后這種表才有這條獨(dú)立的url

在stark.py中,我們給Customer這張表設(shè)置獨(dú)立的配置類,extra_url會(huì)返回一個(gè)url,對(duì)應(yīng)的視圖函數(shù)為self.cancel_course:

class CustomerConfig(ModelStark):

    #處理課程的顯示樣式和每個(gè)課程對(duì)應(yīng)的url,url中帶有要解綁的課程id和表中這條記錄的主鍵id
    def display_course(self, obj=None, is_header=False):
        if is_header:
            return "咨詢課程"
        temp = []
        for course_obj in obj.course.all():
            s = "<a href='/stark/crm/customer/cancel_course/%s/%s' style='border:1px solid #369;padding:3px 6px'><span>%s</span></a>&nbsp" % (obj.pk, course_obj.pk, course_obj.name)
            temp.append(s)

        return mark_safe("".join(temp))

    #視圖函數(shù),實(shí)現(xiàn)點(diǎn)擊后刪除功能
    def cancel_course(self, request, customer_id, course_id):
        obj = Customer.objects.filter(pk=customer_id).first()
        obj.course.remove(course_id)
        #返回當(dāng)前表的查看頁(yè)面
        return redirect(self.get_list_url())

    #新的url,點(diǎn)擊相應(yīng)課程就會(huì)走到這條url來(lái),這是只單獨(dú)為Customer添加一條url
    def extra_url(self):
        temp = []
        temp.append(url(r"cancel_course/(\d+)/(\d+)", self.cancel_course))
        return temp

site.register(Customer, CustomerConfig)

在sites.py中,我們?cè)O(shè)置一個(gè)通用的extra_url功能,但返回是空,所以其他表對(duì)應(yīng)的url中沒(méi)有cancel_course/(\d+)/(\d+):

class ModelStark():  #配置類
    def extra_url(self):
        return []

    #我們?cè)诙?jí)分發(fā)中將這條url添加到temp列表中
    def get_urls2(self):
        #額外添加一個(gè)url
        temp.extend(self.extra_url())

        return temp

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

分享名稱:stark組件5_擴(kuò)展url-創(chuàng)新互聯(lián)
本文地址:http://www.chinadenli.net/article42/gsjec.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開(kāi)發(fā)品牌網(wǎng)站設(shè)計(jì)做網(wǎng)站網(wǎng)站改版定制網(wǎng)站App開(kāi)發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

綿陽(yáng)服務(wù)器托管