您在這裡

關於view的模組參數問題

shirley_34's 的頭像
shirley_34 在 2010-11-18 (四) 00:09 發表

我現在想做一個view是可以讓其他人觀看自己的基本資料(聽起來很簡單但是我弄好久QQ)
可是怎麼樣都跑不出來
欄位設定和過濾器都已經弄好了
如下圖

我爬過很多文
大家都說view的參數是和URL有關係
要去設定URL的連接位置
可是為什麼我點下去新增一個argument的時候卻出現下面那張圖

完全不知道該去哪裡設定要用的東西

有沒有人知道要怎麼辦阿哭哭
我咕狗和YAHOO還有這邊都看過了
大家都說要URL
可是URL到底在哪裡QQ

除了將arguments 改成 user : uid, 還要加上以下修正

1. 刪掉 relationships node:content profile, 這個不需要 (content profile 就是一般的content type, 不需要加上這個關係)

2. 刪掉過濾器 使用者: current 否。 如果使用這個filter: user current yes 的話,變成只有自己看的到, 別人看不到。user current no 的話, 就變成別人看的到,自己看不到,我想這應該都不是你想要的,所以這個要去掉。

Fields 的部分,因爲刪掉了上面的 relationships, 所以原來顯示的 (content profile)就自動變成了(content).

其它都ok.

有關Views 的設定,在各個display差異設定時候, 要記得選擇overridden. 否則會很摻. 設好了某一個display, 卻把其他的搞砸了。

你可以試試看取消我們建議的設定,就是恢復原來的設定,但是要選擇update default 而不是overridden, 這樣別的display 就會恢復原來的設定。就像什麽事也沒發生一樣。

然後你再重做一次本帖有問題的部分,但要記得overridden.

我後來覺得應該是因為我把兩個view建在同一筆view的位置所以有衝突
所以我就把另一個view獨立出來
想要用block以不同的內容類型結合成一個顯示頁面
可是之前都是用頁面形式
所以使用者參數那邊可以用路徑那邊來設定
但是現在變成block沒有指定的路徑了
參數怎麼設都無法讀取變成無效
不知道要怎麼辦ˊ ˋ

不好意思
我不是很懂danny大給我的那個模組是要用來?
我安裝了之後發現它可以插入一個自己寫PHP的欄位(用那個檔案下載的介紹測試的)
可是我不是很懂這要怎麼用在我的問題上面ˊ ˋ
或許是我程式基礎太低了QQ
或者我解釋的不清楚(sorry>"<)

我想在下面這個頁面顯示照片上那個人的基本資料以及其他學經歷等
(請忽略到PHPCODE的東西@@")

但是我在view裡面用block設定成下面這樣
因為之前是用page可以輸入路徑
現在換成block之後就沒有路徑那一行的""user/%/...""可以用了
變成說參數我要讓這個頁面只屬於照片上面那個人的資料就沒辦法丟
會變成上面那張圖一樣有好多頁都是同一個內容類型但是不同人的資料
(像上圖的照片和資料就是不同人的ˊ ˋ)

真的很不好意思
因為我太弱了所以問題很多
感謝各位熱心的朋友回答我>"<

對不起, 我寫錯了,不是views customfield, 是 http://drupal.org/project/viewsphpfilter

如果不會寫php snippet,那我建議你就輸出整個content profile 的 node, 而不是field. 我不懂你為甚麽要弄得這麽麻煩, 分割這麽多block, 最後又全部放回到一個page 上。

其實你可以用 cck fieldgroup (cck 模組裏面就有), 將欄位分成group, 然後用適當的display (有好几种选择 ) + css 就可以将輸出弄得很漂亮。不用像现在這麽辛苦。

因為我想讓使用者在新增資料的時候是分成不同類型的東西而不是都在同一個CCK裡面
所以我才會分這麼多種CCK
danny大的方法我之前用過了感覺對使用者比較不直觀
所以後來才分別建了五種CCK
但是也因此就變的輸出的view設定很麻煩

所以真的沒有一個方法可以讓區塊只顯示特定的個人資訊嗎?
真是哭哭
看來我只好重新思考了ˊ ˋ

最後還是要感謝大家的幫忙
<(-_-)>

所以真的沒有一個方法可以讓區塊只顯示特定的個人資訊嗎?

方法當然有,而且很多,但是由於無法理解你的views 建立的邏輯,只怕動了一個地方,別的地方又毀了.

自己多試試吧。祝你好運!

to shirley_34,

看了一下你的題目,是不是想要只秀出一些特定的 field?

我使用 display suite 作出下面這個附圖,如果這裡的附圖符合你的情境的話,可以考慮使用 display suite.

在這個圖中,左邊是五個欄位,右邊其實只有一個 node 的 body 欄位。display suite 還有一個示範的網站,看過之後,應該很容易理解它的用途。

用 view 來秀出一個 node 中的指定欄位? 嗯,我倒是沒有想過這樣用。

TO artt大
我下載了這個模組可是我看不太懂怎麼使用耶ˊ ˋ

其實我要做的東西很簡單
只是想要讓個人資訊頁面可以讓人家點選"歷程"進去看資料而已
但是歷程裡面有五種CCK
我本來是放在同一個CCK
可是這樣無法讓他獨立決定可不可以顯示一些特定group的CCK
所以我只好分成五種
可是分成五種放在同一個view的頁面在過濾器塞選的地方會有問題
(只能全部用and或用or)
條件設定會牽連在一起
所以最後的辦法才會想要用區塊來兜起來
可是區塊就不能單獨顯示特定一個人的頁面
這是讓我很困擾的地方

我要的只是在A的個人資訊頁面點選"歷程"之後只顯示A的歷程而不要全部人的歷程

如果artt大還是聽不懂的話我真的覺得很抱歉
好像是我表達有錯誤
對不起QQ

哇,真的看不太懂你的描述。

  1. 固定只秀出某些欄位:如果是要從 content type 以及它的 cck 中,固定只秀出某些欄位的話,使用 display suite 還蠻適合的。
  2. 依據條件、規則來顯示哪些欄位:我馬上想到的是利用 panels。在 panels 中,一個頁面可以有幾種 variant, 只有符合條件的 variant 才會秀出來。同時,variant 中由許多的 pane 來組成,每佪 pane 可以放不同的東西 (content, block, mini pane, views, text, php code...)。

不知你要的是哪一種?

ps. display suite 應該算簡單,先看一下它的示範網站,了解它可以做什麼功能。你還可以使用 id:demo, password:demo 來登入,探查一下示範的資料是如何設定的。

以設定某個 content type 如何顯示為例:安裝好了之後,到 admin/build/ds/layout/<你的 content type> 的網址,就可以開始設定這個 content type 要如何顯示。如果你想要作出 field group 的效果,直接在 admin/build/ds/nd/fieldgroups 這裡增加 fieldgroup, 你就可以在設定 content type 的 display 時,使用在 display suite 中新訂的 fieldgroup 來作欄位分組。

除了安裝 display suite 這個核心模組之外,如果要作到上述的自訂 content type display 的話,還要安裝 display suite 的 additional module: Node displays.

而如果是要自訂 user profile 的 display 的話,則要安裝 display suite 的 additional module: Display Suite profile.