Jag bygger en community-sajt där en innehållstyp används för att skapa event. Medlemmar på sajten skall kunna ange sitt deltagande i respektive event och för detta har jag låtit event-typen innehålla ett cck-fält deltagare av typen user reference som kan ha 0 eller godtyckligt antal värden (referenser) begränsat till rollen medlemmar. Genom att tillåta medlemmar att editera fältet deltagare så kan man själv ange sitt deltagande. Detta gör att jag får in den information som jag eftersträvar, dock finns det ett problem med lösningen som inte kan accepteras. Användare kan ju nämligen ta bort eller lägga till även andra än sig själva, vilket inte är ok.
Jag provade att kontrollera begränsningen av möjliga användare via en vy som bara listar aktuell användare, men det påverkar ju tyvärr inte bara vad som kan editeras utan även vilka user referenser som överhuvudtaget kan finnas. Har medlem A lagt till en referens så kommer den därför att försvinna om medlem B går in och editerar. Återvändsgränd alltså.
Har någon något bra förslag på lösning? Kan VBO användas för editering? Jag har aldrig använt VBO så den tanken är ett hugskott.

Comments
Med modulen Flag kan du
Med modulen Flag kan du låta folk flagga de noder/händelser som de vill gå på:
http://drupal.org/project/flag
Du kan sedan med Views lista de användare som anmält sig till en viss händelse.
Jakob Persson - NodeOne
Jakob Persson – Leancept – Results-only digital and marketing consultants – Personal blog
Verkar som en bra väg, men...
Tack för tipset, Flag verkar vara ett lämpligt verktyg för det jag vill åstadkomma. Dock stöter jag på ett problem som känns som ett SBS-problem, men jag får inte till det.
Jag vill mha views lista noder (event) som flaggats av en specifik användare, men om man lägger till en relation av typen "Flags: Node flag" och anger typ av flagga (deltagare) så finns dock bara "Current user" eller "Any user" som tillgängligt alternativ att flaggbegränsa med. Jag skulle vilja ange en specifik user, användaren Adam, så att vyn endast visar de noder som Adam flaggat. När jag letat hittade jag liknande fall och där återkommer tipset att skapa en relation av typen "Flags: User" som sedan skall gå att filtrera på, men någon sådan finns inte att tillgå vad jag kan se.
Vad är det som jag har missat?
Jag misstänker att
Jag misstänker att relationen "Flags: User" förutsätter att du har ett argument som tillhandahåller ett UID för Views.
Jakob Persson - NodeOne
Jakob Persson – Leancept – Results-only digital and marketing consultants – Personal blog
Nja, det tycks inte vara hemligheten
Uppenbarligen är det någon förutsättning som krävs för att relationen "Flags: User" skall göras tillgänglig, men det verkar inte hjälpa att lägga till ett UID-argument. Jag har försökt bena ut problemet och har då kollar på den vy som bifogas Flag-modulen, nämligen vyn "flag_bookmarks". Om jag går in och editerar denna så finns "Flags: User" tillgänglig som relation, men jag kan inte begripa vad det är i denna vyn som gör relationen tillgänglig. Det här tycks mig så märkligt att lösningen bara måste vara av det där pinsamt enkla slaget.
Skam den som ger sig
Det blev en sen kväll, eller iaf en tidig morgon, men nu fick jag ihop det hela. Först måste man upprätta en relation till aktuell Flag, dvs jag skapar en relation till "Flag: Node" för min flagga "Deltagare" och hämtar på så sätt in denna i vyn. Jag väljer då att hämta in samtliga noder som är märkta av någon, kunde i och för sig stänga av filtreringen i den relationen helt, men här gör det ingen skillnad. När flaggan Deltagare så är inhämtad kan jag hämta in "Flag: User" genom en relation till flaggan Deltagare. Slutligen kan jag så sätta ett UID-filter som använder "Flag: User"-relationen och för denna filtrera på valfri användare. Mission completed, bra övning på att använda relationer, detta med relationer kan ju ofta vara småklurigt... ;-)
Signup?
En annan variant är att använda modulen Signup, som är gjord för just detta ändamål.
Det finns förstås många olika sätt att lösa problemet på, och även om Signup-modulen exempelvis används här på g.d.o är Flag-modulen större, mer använd och mer tillförlitlig.
//Johan Falk